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

  • Thanks QuaziGNRLnose

    I finally got my Q3D downloaded and installed..

    Now it's (just) a matter of learning to work with it..

    First up:

    • Loading and texturing a model with bones.

    Second:

    • Manipulating the scale of the bones with a slider.
    • Rotating either the object or the camera around the object.

    It's probably going to be an interesting time of many failures and lessons learned..

  • What do u mean by phong/lambert not working, they work fine for me but maybe what your doing is causing issues.

    Those functions should be defined for all intents and purposes so im not sure whats going on (no one else reported this issue). A step by step explanation of what youre doing would help aswell as a capx.

    EDIT: Looking at where the error originates, looks like you're using the old functionality for materials/objects, which is pretty much useless and deprecated in 2.4. You should be using Q3D Model for everything now.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • What do u mean by phong/lambert not working, they work fine for me but maybe what your doing is causing issues.

    Those functions should be defined for all intents and purposes so im not sure whats going on (no one else reported this issue). A step by step explanation of what youre doing would help aswell as a capx.

    EDIT: Looking at where the error originates, looks like you're using the old functionality for materials/objects, which is pretty much useless and deprecated in 2.4. You should be using Q3D Model for everything now.

    Updating everything to the Q3D Model plugin seems to solve it, thanks so much

    EDIT: also, any plans, or is it even possible for the sprite object to react to lighting situations? or am I better to use a Plane with transparency enabled and manually make it face the camera at all times?

  • brent_hamel

    You need to use a plane on a Q3D model for that, sprites are optimized to be fast so they don't have support for features like lighting.

  • brent_hamel

    You need to use a plane on a Q3D model for that, sprites are optimized to be fast so they don't have support for features like lighting.

    I'm noticing that when I try to use transparency in the model textures (to replace the billboard sprites), I end up seeing through the entire 3D viewport, as opposed to just the model's texture itself... any ideas?

  • brent_hamel ,

    Are there sprites behind the model? Sprites won't show up behind models with transparent bits.

    If they are models behind the models, are their position further away from the camera? If they are the same position as the model with transparent bits, the model without transparent bits might not show(because the camera may not know which one to render first based on distance from camera)..

  • brent_hamel ,

    Are there sprites behind the model? Sprites won't show up behind models with transparent bits.

    If they are models behind the models, are their position further away from the camera? If they are the same position as the model with transparent bits, the model without transparent bits might not show(because the camera may not know which one to render first based on distance from camera)..

    Probably just easier to show you what I mean...

    http://tinyurl.com/nftbsk3

    There's a starfield sprite on a 2D layer underneath the Q3D viewport layer in C2, and regardless of models in the viewport, if the materials have transparency (as these do) they show through the entire viewport.

    (also if no "slimes" appear in the game world, just refresh until they do, they're the transparency culprits, but have a very low chance of not spawning)

  • brent_hamel , hmm I don't know how to fix that. Maybe QuaziGNRLnose knows how? I'd be interested too since that seems like an important thing to get working correctly.

  • brent_hamel , QuaziGNRLnose

    I found this link that talks about the issue: https://github.com/mrdoob/three.js/issues/4724

    It mentions disabling Alpha blending and using Alpha Testing, which I think may be a solution, but I'm not sure how it applies in Q3D. Maybe Quazi can let us know how to disable alpha blending and adjust the alpha testing to solve the issue? I saw there is an action to adjust it, but it requires a material name- and I'm not sure what name to use (how to get material name a model is using).

  • brent_hamel

    Not a bug, its an important feature for performance. To get proper transparency you need to change the material property for "transparency" to "on/enabled" so that q3d knows it must do special sorting. You can set this in the properties or by using the set opacity action.

    Most objects lack transparency so itd be slow for this to be the default.

  • QuaziGNRLnose , what if all your objects use transparency? Is there a way to use the alpha test?

    also, setting transparency on doesn't fix the issue.

  • Agreed, the effect as seen in my link has transparencies enabled for the material

  • brent_hamel , QuaziGNRLnose

    Okay I found a fix.

    In the runtime.js of the Q3D Model, on line 3796 there is a typo;

    this.mat.alphatest = alphatest;

    It should be a capital T, like so;

    this.mat.alphaTest = alphatest;

    I also re-enabled the action in edittime.js on line 244;

    changed

    af_deprecated

    to

    af_none

    Then I used the action to set the alphatest value to 0.5 on the model

    I also set the transparency OFF as well on the model.

    This should fix your issue brent_hamel

    Apparently judging by this comment in the edittime on line 241;

    // these two weren't really having any effect in webgl renderer, so they're deprecated

    You must have overlooked a typo, QuaziGNRLnose , which is why it appeared not to be having any effect.

    So if you fix the typo it will work again.

  • I wonder: is there any documentation explaining what all the variables of a 3D object stand for (Rz, Sx etc.)?

  • brent_hamel , QuaziGNRLnose

    Okay I found a fix.

    In the runtime.js of the Q3D Model, on line 3796 there is a typo;

    this.mat.alphatest = alphatest;

    It should be a capital T, like so;

    this.mat.alphaTest = alphatest;

    I also re-enabled the action in edittime.js on line 244;

    changed

    af_deprecated

    to

    af_none

    Then I used the action to set the alphatest value to 0.5 on the model

    I also set the transparency OFF as well on the model.

    This should fix your issue brent_hamel

    Apparently judging by this comment in the edittime on line 241;

    // these two weren't really having any effect in webgl renderer, so they're deprecated

    You must have overlooked a typo, QuaziGNRLnose , which is why it appeared not to be having any effect.

    So if you fix the typo it will work again.

    That definitely solved it!!! Awesome job, and thanks so much!! That should be a quick fix for Quazi! The C2 community is kinda the best imo

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