matriax's Recent Forum Activity

  • >

    > Change it to 1000,0.5,0.5

    >

    Changed the "direction" of the laser, but, it appears the laser mesh'es Y position was simply too low. Changing the laser mesh position to (0,50,0) worked for me (just how did it ever work for you???)

    And on to a different subject, by the way, can you implement ShaderMaterial ? I can't wait to use some from Shadertoy

    fuego96 I'm trying the laser starts from the camera to infinite and get moved and rotate with the camera pos, and rotation, to get a real aim, but i can't get it, can you?

  • X3M Mmm not works for me, tested on NW.JS and browsers and this is how looks:

    The laser is always in that position. What can be?

    Also in my FPS tests to launch bullets happens the same, the bullets are launched to the left instead in front the camera.

    In this .capx i not edit nothing, simply open and run and this is the result. I tried also desactivate one of the methods but the same none works.

  • X3M Oh raycasting! I don't know this was already added, i was looking in the Mesh expresions, seems the Scene expresions have some things interesting too.

    About do the things correctly sounds promising, then waiting for the 0.6

  • X3M Is it possible to implement Raycast?

    So you would not have to create an object for each bullet, simply a sprite where the lightning strike, similar to how it is used in Unity.

    MATAGUIRIS And if i want to do a bazooka launching misiles?

    BTW, this is a good example that how create/clone/duplicates or whatever in Babylon3D on they need to have the same behaviour to move and actions for all them to collide. I mean different Bullets againts different mesh objects on they have assigned behaviours and actions.

    For sprite.objects is easy, simply on press X > Hero-Spawn bullet & set angle of motion=Player.Angle. After that when bullet collides with an EnemyFamily = Destroy Bullet and EnemyFamily. After that you simply add the different enemies to the family and you can put 20 in the level or whatever and all will works.

    Because C2 on create/spawn an object create duplicates(Other instance with the same name) not a clone(Different name and instance).

  • X3M Talking about cloning a mesh in realtime using the "Clone Mesh" action on NewMesh.Objects.

    If we want to shoot bullets for a FPS using the MeshArray, how we do that?

    Can you please make a video/template on you can move/rotate the camera and pressing some key a bullet is created in front the camera and goes forward. And this bullet on collision with another mesh destroys both?.

    Edit: Maybe a bullet behaviour like we have on C2 for 2D objets will be great, will make the things more simple i think.

  • Unfortunately it's not possible

    BTW, the "Set Name" of the mesh action is confirmed for the 0.6? Not will be elegant but i guess on events to a family of mesh objects do a "For each" > "Set Name" to whatever we want and fixed.

    [quote:yz6ckkap]Again no one of you has made a capx where he explains why C2 cloning method is easier and better , and I mean an example in which you clone a sprite and then control one of them.

    If the example is much simpler and clearer than my method with MeshArray, then I'll rewrite all the new plugins. So its up to you to prove it.

    This time i'm not was talking about clone objects in realtime and control them, i guess you refer to gamecorpstudio. I'm talking about duplicate objects in the C2 layout to create my level from scratch and after that in events set actions that affects to all the duplicates, that can be items like coins, diamonds,etc... without use MeshArrays, loopindex, duplicate events and all that.

    As you can see in the video i have in the C2 layout a level designed with duplicated items to pick. This trick only works for NewMesh.Objects not for cloned in realtime or scenes from 3D editors, as i said i prefer do all in C2 also i guess will works for Obj-Js.mesh or i hope.

  • Hey fuego96 great demo! Used some 3D editor? In that case what you use?

    -----------------------------------------------------

    Well, Seems i get something, is a "dirty trick" but works XD.

    No Mesh Array, No loopindex expresions, No duplicate events or other stuff.

    With a single event working on a family you can add whatever mesh object to set an action without worry about nothing more. (This trick only works with NewMesh objects created in C2 layout)

    Here the video: http://sendvid.com/fogkh5nx

    The unique thing still i can't get is avoid the mesh naming in the properties. Still i have to put Coin1, Coin2,etc....

    X3M Is possible that Babylon3D on runtime automatically fill the Mesh name in the render? Something like:

    NewMesh.Name+UID

    (Or whatever that gives an unique name for that mesh)

    So with that totally C2 workflow, you duplicate objects in the C2 layout without worry about mesh naming and apply actions to different objects in a single clean event.

  • X3M About the create objects my question was if when in events we clone a mesh in the render, Babylon3D also creates their Mesh.Object to be linked and use C2 native functions but seems is not.

    I think at the end i will continue my method i started in 0.2 to use mesh.objects in the same way we use sprite.objects, but using events to link/represent sprites-mesh without set name, mesh arrays and all this stuff.

    But first i'm going try to hack in some way the actual NewMesh to do the same.

  • [quote:dfvjqorl]not really, you clone both just when they are cloned they are not linked as 1 object. that is why the visual object clone is not reacting. unless u set the name in the properties. which you cant since the function "set name" cant be called by event expression.

    X3M can you tell us if the NewMesh.Object is also cloned on "Clone Mesh" or only the 3D object in the Babylon Scene Render?

    No in my tests, Using the Babylon action of "Clone Mesh" The NewMesh.objects are not cloned only the objects in the 3D scene of the Babylon render.

    Create a NewMesh object, set clone mesh in events 10 times. Then add a textbox that on press any key show NewMesh.Count. This will show one, because you only have one object created that C2 can handle without Babylon3D action/functions, but in the render you will see 10 mesh objects, one that C2 can manage because exist internally with their UID etc... and the others that only exists in the 3D render that are invisible for the C2 native functions.

    About the second thing, i'm not saying is a issue, i'm saying that we can't do all that because C2 don't know that exists, Q3D can have it in the same way, but we are not doing another Q3D, i want Babylon3D be much more in all ways and have a great potential to be, just i can't believe there is no way to manage mesh.objects like sprite.objects without mesh arrays, set names and other stuff

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • X3M Yesterday i worked on debug various things and maybe i found the problem, or one of the problems.

    When you clone a mesh using events you only clone the mesh in the 3D scene not the NewMesh.object that C2 can manage a thing that happens with Sprite.Objects. If you do a lot of mesh clones using events you only will access to the objects you created in the C2 layout(That have a name, UID, instances,etc..) but not the ones you cloned in realtime because this ones not have an UID to be accesed, instances or whatever C2 can control and assign actions.

    So, when we use the event "Clone mesh" and set a name , Babylon3D have also to create a NewMesh.Object and add the name in the properties , in the same way the Sprite.Objects does when in events you create an object, "spawn another object" etc... if not we can't manage this mesh using events because C2 not have idea this one exists, only exists in the Babylon scene render.

    Or maybe i'm wrong?

  • matriax I am going to add the Change mesh name function, but be aware that the things you two wanna do are just not going to work.

    I'm talking from the point of view of a coder.

    Does C2 have a Sprite array plugin like the MeshArray ? I guess not ...

    For us, we think like how C2 do the things with the sprite objects, their name, UID and the way that duplicate/clone and using family works, and the idea is have the same for 3D objects.

    If you say the change mesh name will not works, then we have to think in other way to solve that. We all want the same. For that i said ask help for users with big experience on plugins, to see if there is any way to solve this problem.

    In 2D if we duplicate the Sprite.Object in the C2 layout all they have the same name with different UID. In events if we said:

    On Hero Colides with Sprite.Object > do something . Will be applied to all the instances of that Sprite.object that have all the same name but different UID.

    But in 3D if we have 10 instances of the same object only will be applied to one Mesh.Object , the first one created because applies to the Mesh name in the properties. So we have to find a solution to manage 3D Mesh.Objects in the same way C2 do for Sprite.Objects.

    For us the first thing come to our mind is the action to change the Mesh.Name. Because we can have a family that have a Coin.Object and when start do some "for each" and change their names automatically and then use that family to apply an action to all the instances. BTW, this is still more a patch than a solution.

    The problem:

    Seems in 3D every mesh object need to have a different name, even for an instance of the same object to apply some action.

    Possible Solution

    Some way that the mesh name of the 3D object is the name of the Mesh.Object we create in the C2 layout. For duplicate objects Internally set the mesh name as "Object.Name"+"UID". So every 3D mesh in runtime will have a different name, but in the C2 layout we only see the name we set on top of the left tab, as we have for Sprite.Objects.

    And when we do an action on events related to a Mesh.Object this action will be applied to all instances of that Mesh.Object with their different UID.

    We don't know how C2 exactly do that for Sprite.Objects and how do the same for 3D, for this reason i think will be a good idea ask for help to rexrainbow or R0J0hound that maybe they know how to fix this problem.

  • > Do you mean a Function or an Expression :

    > - Expression means : Alert(Mesh.Name)

    > - Function means : Set mesh name to ("Box")

    >

    > Yes whatever that is I will add it.

    >

    Yea i meant Function... if that is the one that alters the Mesh Name.

    something like the bellow image... i just cloned a function in the action common.js just its not linked to anything so errors all over the place.

    the above image should change the bellow value

    You had the same conversation with X3M that i had days ago requesting the same action and talking about the same things.

    I also requested be able to change the name of the mesh in that properties in the left tab using events, and in the same way i sent him some screenshots, but told me this was unable to do because something that how C2 manage that and is imposible change the name of a mesh in runtime.

    In one of this conversations was born the MeshArray to at least to pick coins in one event, instead to create a pick event for every single coin(Coin001, Coin002,etc...) like in one of the early templates.

    ---

    The big problem actually on Babylon3D is manage the duplicate/clone mesh objects and their instances that breaks totally the C2 workflow. Maybe we can't explain what exactly we want, or maybe the Babylon3D or C2 SDK plugin not allows the things we are requesting in the way we want, and this conversations always seems to go nowhere.

    So, I suggest ask for help to rexrainbow or R0J0hound that are possible the most experienced members doing plugins for construct to fix this problem once in the best possible way.

matriax's avatar

matriax

Member since 22 Jun, 2015

Twitter
matriax has 114 followers

Trophy Case

  • 9-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Popular Game One of your games has over 1,000 players
  • Famous Game One of your games has over 10,000 players
  • Viral Game One of your games has over 100,000 players
  • Regular Visitor Visited Construct.net 7 days in a row
  • RTFM Read the fabulous manual
  • Email Verified

Progress

17/44
How to earn trophies