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

  • 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

    no problem!

    btw, your game is looking really cool.

  • >

    >

    > 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

    >

    no problem!

    btw, your game is looking really cool.

    Well thanks it's using 2D top down logic atm, I'm playing with some concepts that I'd been working on in 2D top down already, to see if they'll translate to a first person perspective

    All thanks to Q3D! Pretty sick stuff QuaziGNRLnose !

  • 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.

    Main reason i disabled alphatest was because its tied to shader compilation (it doesnt use a uniform) i guess i should put it back though (the typo went unnoticed too hence that comment :p)

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

    The C2 expressions menu should give you a simple explanation already.

  • I ran into a problem. I imported some json models with morph animations from blender, and everything was great, until i tried to export my project. When it is exported the models won't load for some reason. Here is my capx:

    https://dl.dropboxusercontent.com/u/54642312/3Dtest.capx

    can someone tell me, what's going on?

  • I have a problem. No matter how much I try I will always end up with this glitched texture on one of my models.

    I think it happens only on models that are pushed inside.

    The glitch

    Pushed inside

    Simple cube with a fragment extruded into it bugs the same way. Am I the one making mistake? Is there any option I should use to fix it?

    Changing textures, making them smaller/bigger, changing texture options like filtering/anisotropy/transparency, nothing can help

    What should I do?

    [EDIT] Fixed this bug with weirdest fix possible. Added more edges into disappearing face. Lost few days figuring it out, got the answer few minutes after asking for help...

  • hi

    Excelent plugin.Bought it some days ago, to make a project that is waiting for some time... After read all pages and all things I found about the pluguin , I was sure it can do what I need.I have a problem that Joannesalfa already commented in page 88. and the developer confirm that is possible to do.

    I have a model , UV mapped, I created a texture for it at frame 0 with a animation name DiffuseMap. My model displayed correct in vieport, when I run my project. So I made a sprite with an action to Q3DMaster take a snapshot from my viewport when I touch on it, and I want my model load the snapshot and use this texture.

    well , first a white box popup show the next message:

    "the image file you are trying to use has not been loaded yet ( this take some time after load action ) or does not exist at all."

    and my model don't load the texture.

    I did a sprite that load the snapshot , just to debug, and it is work nice.

    my model,is using an action from Advanced stuff on menu action "texture from Q3D" but don't work... so what I'm doing wrong? Could you do an example capx just to share with us. I believe this is a simple problem...

  • scotter

    As with almost every game engine, faces on models in Q3D need to be triangles, since processing quads etc. would easily cause degenerate cases which are slow/difficult to handle in such a performance sensitive environment. Exporters have an option to "triangulate faces" which will do this automatically for you.

    @alemar

    I'm not really sure what you mean by

    "So I made a sprite with an action to Q3DMaster take a snapshot from my viewport when I touch on it, and I want my model load the snapshot and use this texture.

    well , first a white box popup show the next message:"

    you're not really giving enough information.

    You may have to wait a bit to make sure the snapshot url is fully created, you probably can't create the texture right away.

  • ok

    sorry my poor english. I´ll try show with images:

    if I could load the snapshot on my model, it looks like this...

    I know this looks weird, but is just for tests.

    hope you can uderstand now

  • Sorry for offtop, but I just wanted to say, that models were not loading for me after export in latest unstable release of construct. After I installed r206, everything worked fine. I don't know what causes this issue and I hope it ceases to exist in future releases.

  • I'm trying to get shadows casting from models with alpha transparency.

    I found this:

    http://threejs.org/examples/webgl_animation_cloth.html

    Which does what I'm trying to do, but I'm trying to figure out a way to apply this effect in Q3D..

    I've looked at the qfxloader and I've made this file:

    <shadertype>ShaderMaterial</shadertype>
    <vertexshader>
    varying vec2 vUV;
    
    void main() {
    
    	vUV = 0.75 * uv;
    
    	vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );
    
    	gl_Position = projectionMatrix * mvPosition;
    
    }
    </vertexshader>
    <fragmentshader>
    uniform sampler2D texture;
    varying vec2 vUV;
    
    vec4 pack_depth( const in float depth ) {
    
    	const vec4 bit_shift = vec4( 256.0 * 256.0 * 256.0, 256.0 * 256.0, 256.0, 1.0 );
    	const vec4 bit_mask  = vec4( 0.0, 1.0 / 256.0, 1.0 / 256.0, 1.0 / 256.0 );
    	vec4 res = fract( depth * bit_shift );
    	res -= res.xxyz * bit_mask;
    	return res;
    
    }
    
    void main() {
    
    	vec4 pixel = texture2D( texture, vUV );
    
    	if ( pixel.a < 0.5 ) discard;
    
    	gl_FragData[ 0 ] = pack_depth( gl_FragCoord.z );
    
    }
    </fragmentshader>[/code:1g7bi418]
    And I tried loading it via the action to "set material to shader."
    It doesn't give any errors, so I assume it loads, but it doesn't change anything. It doesn't cast the shadows correctly.
    I have alphatest set at 0.5, and I have blending set off. And I've also tried without those settings.
    
    Any help getting shadows cast correctly for models with alphatest set would be great. I need it to take into consideration the alpha when casting shadows.
    
    I notice in the example they have this set:
    [code:1g7bi418]
    object.customDepthMaterial = new THREE.ShaderMaterial( { uniforms: uniforms, vertexShader: vertexShader, fragmentShader: fragmentShader } );[/code:1g7bi418]
    I think that might be important? (customDepthMaterial)
  • Here is a visual example of the problem:

    http://stackoverflow.com/questions/1624 ... ture-alpha

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Prominent

    yea, you need the custom depth material for it to work, but as i've said the shader loader is incomplete and doesn't allow for these kinds of adjustments yet (you can only affect the main material, so some things can't be changed yet). This is why i don't recommend using it. Even though you've reverse engineered it, it'll probably be changed in a future update so you'll have issues when migrating if you're using the current qfx loader.

    Also, systems like custom depth material which give low level access are a bit iffy in three.js itself at the moment if i recall. I need to investigate more.

  • Sup!

    Before anything else: QuaziGNRLnose deserves major credits for maintaining Q3D, granting sweet features (skeletal animation?! 3D physics?!) and also for just being so friggin' amazing. I'm a having a ton of fun playing around with Q3D, since it's surprisingly user friendly due to it's design and integration with C2's interface. All in all, I'm very pleased with the extension

    Now, I'm working on a project (of course) with Q3D, and I'm wondering ... How would one go about achieving cell shading? (Simple toon shading, that is - outlines or not)

    I've noticed the Shader property below the Material Type property in a Q3DModel, asking for a .qfx GLSL file - But what is that, exactly? Google is kind of inconclusive when it comes to answering that, could you point me in the right direction if I'd want/have to write a cell shading .qfx myself? Or is there a place where such finished, default GLSL shading algorithms can be acquired/downloaded premade in .qfx form, and be usable for Q3D?

    Thanks in beforehand

    edit: After reading the above post, I guess I should wait until a later update before I try getting cell shading to work, or is there something I could test in the meanwhile?

    How's the work regarding extending the .gfx capabilites going, if I may ask in a patient manner? Cheers!

  • Thanks for the clarification QuaziGNRLnose

    Also, systems like custom depth material which give low level access are a bit iffy in three.js itself at the moment if i recall. I need to investigate more.

    Please do, it would be great to have access to it so that the effect I'm after can be attained. I have a game I began making that requires it but I'll have to wait until there is a way to activate the effect I guess..

    also, thanks for developing this plugin.

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