Q3D V-2.4 [3D Physics + Skeletal Animation UPDATE]

  • I can't really figure out what you mean from those images.

  • I can't really figure out what you mean from those images.

    Dunno how I can explain it even more clearer:

    • Q3D Physics allows to rotate the 'physics body' independant from the 3D model or the collision model.
    • What I did was rotating the 'physics body' (the bright yellow box) 45 degrees (this is what you see in the first image). I did not play around with neither 3D model settings nor collision settings
    • Result: the little green box - the player - is able to overlap with the big yellow'ish box and collide ONLY with the rotated physics body as it should.
    • Now, without doing anything else, I deactivated the debug body for the big 3D object, so that you don't see the bright yellow physics body anymore
    • Result: now the big yellow box has the same hitbox like a normal box; the Q3D physics body collision doesn't apply anymore. I'm able to touch the box, but unable to overlap like in the first image.

    This is really bizarre since the only thing I'm doing here is to deactivate the debug body (so that it is invisible) and suddenly the whole physics changed, which - as you already mentioned - shouldn't be the case. I tried a lot of things but can't seem to find the error: this only happens if you deactivate the debug body.

    I found this when I tried to create stairs and when I used the same method (rotating the physics body) it worked really good. But then when I deactivated debug body the stairs turned into a huge box instead.

  • It'd be helpful if you could pm me a simple .capx demonstrating the problem, so i could troubleshoot.

    From what i understand though, physics are still working, its just the rotated collider isn't rotated anymore?

  • I believe your model is just rotated 45 degrees, this is a cosmetic thing.

    When a model is imported to Q3D it rarely if ever is oriented the way you want it to be.

    This problem can be easily solved by either rotating the model (which I suggest) or rotating the collider.

    Try tweaking with the model rotation x, y and z, putting in 45 degrees.

    I'm guessing it's the Z rotation you're after.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Loving this plugin, but I think I'm running in to some of the shadowing "issues" with three.js:

    * Is there any way to 'fake' how a point light might cast shadows with a combination of spot lights?

    * I'm using an alpha-transparent diffuse map on a plane for my characters so they get lit correctly. Is there a way for the shadow to take the form of the 'cutout' shape of the texture, rather than the square shape of the plane?

    * Shadows from spot lights/directional lights seem to "override" point lights... the shadows don't get any 'lighter' when coming under the influence of point lights, they seem to just cast darkness everywhere no matter what the lighting set up is. Is there something like a 'priority' setting to overcome this?

  • Will this ever be in the Scirra store?

    I can not use Pay-Pal! i really want to buy this, but it is not an option for me

    Is there any other way I can send you money? This looks wonderful!

  • Hi guys !

    I bought Q3D a few days ago, and I started to discover this awesome addon. It's realy hard for me because I'm french and not realy good in english, so I don't understand all the documentation, wich is, hum, poor.

    I LOVE oldschools FPS like Wolfenstein, Rise of the Triads, etc... And I want to be able to make and play this type of game, directly in my browser.

    Today, I'm proud to show you the result of my work. It's not finished yet, and there still a lot of work on this, but I think it's just a matter of time.

    I made a sort of 2D editor, you draw your level with classical sprites, one for the walls, one for the floor, in the future for celling, other type of walls, doors, items...

    At the begining of the level, Blocs are spawned at sprites coordinates, and we destroy the sprites.

    The tweak is I rotate the camera in Q3DMaster by (90,90,0) to have this "First Person View". It work fine, moving and jumping are OK but I can move through walls. Floor is "solid" and I can't pass through it, but walls are like... Nothing. I think it's because I had to change gravity vector, but I can't find (ATM ) a solution. Still working...

    And the game is "reverted"...

    I'll continue to work on it, you can follow my steps on Instagram : jcharpentier85

  • s3rg385 That's a great way to do 3D editing with the 2D editor! I'm interested to see where you go with it.

    My workaround for 3D editing is to set up incremental "set position" keyboard-activated movements for all six directions (increments of 1, 5 or 10) for each 3D object in the Event sheet, and then I go to the Preview window (the 3D view), press the arrow buttons, etc., to move the object around until I get it into the right space. The increments are recorded in text objects representing x, y and z. When I've got the object where I want it, I write down the coordinates from the text objects, go back to the 2D editor, and change the object's coordinates accordingly. I used this also for having a character reach for an object and touch it precisely with his hand. So far it's worked pretty well.

    I'd like to combine that technique with the one you came up with, to speed things up. Thanks for the information! (Unfortunately, I'm not with my Construct 2 right now, so I couldn't work on the problem you have--making the walls solid. I was able to do it before, but that was using a different view orientation from yours (with y as the vertical axis, z as depth, x as width).

  • QuaziGNRLnose, There is this link wherein we could draw lines and curves using threejs - http://www.lab4games.net/zz85/blog/2014 ... and-webgl/

    Wondering if this is possible using the Q3Dplugin? I havent seen the corresponding actions/conditions to draw a line, push vertices, draw curves for example. Please let me know.

    For example if the below has to be achieved using Q3D, is there a way to do it? -

    geometry = new THREE.Geometry();

    geometry.vertices.push(new Vector2(x1, y1, 0));

    geometry.vertices.push(new Vector2(x2, y2, 0));

    material = new THREE.LineBasicMaterial( { color: 0xffffff, linewidth: 2 } );

    line = new THREE.Line(geometry, material);

    scene.add(line);

    If this is not present in the current Q3D, can it be considered for the future version?

  • LOL, I'm not into 3D yet, but I new there was a way to develop 3D with Construct 2. However, I heard that Ashley doesn't want to competed directly with Unity for now.

  • QuaziGNRLnose, this is so amazing.

    It was totally instabuy for me after playing around with the demos.

    Thank you for such an amazing and unique plugin.

  • Hey C2 Forums

    Been having some trouble trying to get Construct2 and Q3D to figure out the distance between many objects in 3 dimensions and a specific location. Its not the getting the distance of multiple objects that I'm having trouble with. Its that I believe that Q3D doesn't work correctly with the "Distance" Native Expression.

    Basically I've got many "enemy" objects moving towards an object in the centre of the game space, lets call it Home. e.g. 5 enemies, spawned 1 second apart from each other and moving slowly towards the Home in the centre. While all the objects are in 3D space, I'm only using 2 dimensions, which is x and y. The objects don't move "up or down"/along the Z, unless they are interacted with by the player but at that point the're positions are no longer needed (the player kills the enemies).

    Every tick I'm checking each enemies X and Y and comparing its distance from Home. e.g. "Distance (self.X, self.y, Home.X, Home.Y)", setting that value it to a variable called MyDistanceFromHome. I'll then check each instance to see if its number is less than the others and assign the one with the lowest to be set to the closest object.

    The Problem is, I think Construct 2 measuring it in Canvas space rather than 3D Q3D space. So its checking its distance like its a normal 2D Construct 2 game and not a Q3D one.

    One fix I thought of was using Ray's, one for each enemy, to measure the distance from Home. When an enemy is spawned, a ray is spawned with it, its told to cast it too the Home's location From the allocated enemy. Then I would measure its length, compare it to the others, if it was the smallest it would be considered the closest enemy. However nothing I've tried to get the rays to interact with the game as worked. I can't seem to spawn one per object, And I can't even seem to make one visible, even with the debug options on.

    Help with either the problem or with how to use Rays in Q3D would be greatly appreciated.

  • The tweak is I rotate the camera in Q3DMaster by (90,90,0) to have this "First Person View". It work fine, moving and jumping are OK but I can move through walls. Floor is "solid" and I can't pass through it, but walls are like... Nothing. I think it's because I had to change gravity vector, but I can't find (ATM ) a solution. Still working...

    And the game is "reverted"...

    I'll continue to work on it, you can follow my steps on Instagram : jcharpentier85

    are you using some object to stay on floor? what is your Y coordinate based on? ( having that camera angle means u use Y as height X as vertical Z as horizontal )

    i mean what keeps ur camera standing? it cant stand by itself unless u wont alter the height of it... so that means if u dont have no object to interact or have the camera as in a FPS where u have a model behind it... when ul hit a wall having a object /model/smth there will stop the camera go trough... not having it... well camera its not a physical object.. cant be stopped by walls..

    OFF : some random funny q3d stuff < nodewebkit gameplay

    <capx

  • Is there a way I can "draw" on an object? I want bullets when impacting the level to leave marks. However instead of leaving a decal on the wall I would like to draw the decal on it permanently. This way they won't fade.

  • Is there a way I can "draw" on an object? I want bullets when impacting the level to leave marks. However instead of leaving a decal on the wall I would like to draw the decal on it permanently. This way they won't fade.

    you mean as a bullet hole? why not just spawn it on the impact? and leave it there for as long as you want, however having to many of those bullet holes may drop FPS in future gameplay so you may want that the decals to be destroyed or to fade out after some of them pile in numbers

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)