QuaziGNRLnose's Forum Posts

  • gorgonzola

    You can build/set up object hierarchies in Q3D and animate the transforms with actions. There is no supported boneless file format that can do that though, (although you can convert it to one with bones for Q3D if you can track down importer/exporters). If you really want this type of effect (for something like a robot / car whatever which doesn't have skin weighting), you can use bones to handle the objects/animations (making each "objects" vertices on a single mesh controlled/weighted to only a single bone in the hierarcy will do what you want). This technique can also be mixed with skinning to for example animate a sword being swung by someone. You can also at run-time add objects to the hierarchy of a bone, to put a different gun model in someones hand, a helmet on their head, etc. Alternatively you can assemble/animate entirely with actions if your work needs to be proceduraly animated. If you need fast performance you can even do some things entirely with morph targets when performance needs to be really good (for example in an rts, were having lots of units is more important than super high quality animation, you can make morph targets for a tank+turret as a single model and run/mix 4 multiple targets at any one time entirely on the gpu). Theres a multitude of options depending on your use case.

    I'm not really sure if im being clear about the "bones for discrete objects" so what I meant for example:

    make a model of a car with wheels.

    Make a "bone" at the desired local origin of each wheel, and make these children of a bone for the body. make the wheel vertices linked only to their bone, the body's vertices linked only to its bone , animate the bones then export. The bones will be the "object" in the hierarchy. Bones don't really limit you to organic forms, they're just a way of recognizing the animation information for scale/translation/rotation in the hierarchy.

    The other way is to use seperate Q3DModels like you would sprites, and do everything from within construct (this is how the tank in the Tiny Tank demo is animated).

    What workflow are you thinking of that necessitates this?

  • The switch statement for the dropdown would make the set position action very slightly slower per call, but the fact set position is so common made me do it that way, because it becomes a waste if you start having thousands of set positions per frame (which is pretty expected in larger projects). Either option had it's caveats but i figured multiple actions was better than a drop down.

    that Q3D Master action is just accidentally named different (it's been there a lot longer than the other plugs), thanks for the heads up <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    I'm not really sure what you mean. you can't run things "locally" in a browser on a desktop because of browser settings unrelated to Q3D: https://github.com/mrdoob/three.js/wiki ... gs-locally

    The cordova/crosswalk issue is similar, but i don't know the settings to change because I haven't used XDK very much. I'm going to investigate when I've got more time. I'm not very familiar with a lot of wrappers so it's difficult for me to find whats going wrong. Right now my hypothesis is that Q3D is not using the right URL for loading files and i'll need to investigate more to verify.

  • kmsravindra

    Should be soon but im still busy with personal matters

    Q3d should work on mobile browsers already. Cordova breaks model loading, but the plugin otherwise works (oddly enough) and ive been unable to find out a way to fix it, but ill try to take another look.

  • Yea i can see duplicating being annoying but i sadly can't make the sharing work quickly because of the way C2 and my plugin use different canvas contexts, doubly prevented by the fact the sdk doesn't make these types of things too easy (theres no convenient way to share it). I'll look into ways to hack around it if possible but i don't have too much time to make big changes atm.

    Even if you have duplicate textures, i think (you'd have to ask Ashley to make sure) that on export C2 detects duplicates and doesn't make copies, so file size would be the same, the only disadvantage is the annoyance of importing twice while working.

    you don't need to do anything extra for q3d model to have animated textures as i explained, it just animates it if there are multiple frames / animation speed etc.. you can even change animation for the map types like you would sprites.

    I could add a Q3D sprite option for a plane, but the issue is it becomes kind of redundant since it can be done with Q3D Model already, and it can interact with lights and have normal maps on top of that so it's just all around better to use, if you dont want lighting you could just select "basic" as the material type.

    If you don't want to create a plane model (although you could just do this once anyway), theres a "advanced" feature i talk about in the recent changelog that you can use to create a plane geometry internally to use. Just make an action for q3d master that creates a plane using the "plane" action in the 'geometry' section, choose a name like "MyPlane" for the geometry, then on a q3d model using it's property for "model filename", the same way you'd load a model write "MyPlane.geom" and it'll load a plane (or whatever type of geometry you have) the ".geom" tells it the name is an internally created geometry. you can use this to load any of the stuff you can create using the actions in the section, which can come in handy for mocking stuff up quickly without opening > exporting etc.

    If im not clear enough please let me know! i'll do my best to help.

    A lot of these features aren't obvious but im trying to work on documentation that covers everything

  • I knew that'd be convenient so the Q3D object already supports an almost exact clone of the C2 animation system for all map types, so there's no reason for a workaround to do that (it would be really slow to have to pass the data like that so it's not doable any easy other way than being integrated really)!

    it's a bit tricky in one little way to get initialization to work properly, but it's not hard:

    Just name an animation "DiffuseMap" and have that as your "default" (it can be empty and 1x1 if you REALLY hate the name "DiffuseMap", but it needs it for a workaround a construct limitation with properties). This will give your object diffusemaps and you can use it like a sprites animation (add more frames, set the speed/looping/etc.)

    If you want additional "diffuse maps" for animations afterwards you can name them anything basically, and then theres a "set map animation" action (it's called something like that i'm not in a place i can check for sure now). You choose "Diffuse" for the "Map type" you ant to affect and then you can change the anim to any name from there. There's a lot of actions like that which are the "same" as what sprite has with the addition of a drop down that has an option for the map type to change the animation of (since you can have animated diffuse/light/spec/env/bump/normal maps, so you need to specify which you want to refer to). There's even all the conditions etc.

    I hope that's good enough!

    So basically:

    create an animation called "DiffuseMap" to say "hey my model has diffusemaps!"

    then create additional animations like you would for a sprite "Run", "Jump" etc. whatever you want

    then proceed like you would with a sprite, except always choose "Diffuse" for the "Map" so you can tell Q3D "the animation is for this specific map" since the different maps can all be animated.

  • Using q3d is relatively simple for small things like showing a model with a material but also has many features for things like collisions/raycasting/splitscreen/morph+skeletal animation/3d physics/lighting/textures/billboards etc. so its possible to make feature complete 3d webgl applications/games. Documentation is being written this month. Its more than 2 years of work so you can expect it to work quite well and many users actively use it and make requests / ask questions on usage in that very long thread.

  • Things are layed out in orthographic topdown/sideview. Documentation is currently being written but there are capx examples that demonstrate basics for users. As for the naming im not aware of anything else but someone may have picked the same name after me since i get some vr thing released around fall 2014 if i search q3d.

    Juicy

    As stated, im working on docs now since development on core features has only recently finished. Because this plugin invariably has many features i waited till this point since earlier on docs would have needed a significant rewrite multiple times. Documentation im working now i substantial and covers all features.

  • Try Construct 3

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

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

    you need to delete the old versions or very weird bugs could occur

  • kmsravindra

    "sphere6.js" has bones for some odd reasons, you exported the model wrong and it's giving me an error. you should be getting this error too unless you're using an old Q3D version.

    It's not clear to me what the issue is, that Q3D master wont become invisible? whats happening is setting invisible to true just doesn't wipe the canvas when in behind/infront rendermode but prevents any new renders, and since the css styling to hide it only occurs if the object renders (and visibility is true) changing layouts was causing a weird error, it was an oversight that i'll fix. It has nothing to do with euler angles etc. not working however, it's just that "invisible" doesn't clear the canvas in this specific case, so the image that was there when it was made "invisible" stays.

    i'll upload a minor update at the end of the week or something that fixes this and some other little bugs i've found

  • Turning off the transparency removed the "clone" images, but it comes out with another problem..the 3d models do not show up at all when i turn off transparency. Changing the mode to "inside" fixes both of the problems...but turns the image upside-down. Should i send the .Capx trough P.M.?

    Are you using the latest Q3D version? Also it sounds like your browser is out of date. Transparency shouldn't cause that issue unless you have some project settings set up weirdly. In fact the Q3D canvas has nothing to do with the "ghosts" if they're caused by normal C2 sprites. you could PM me but i'm pretty busy atm.

  • shadowofpalms

    All you have to do is use the info from your email and download it again

    Ziggums

    What browser are you using and whats the setup you have? Try using "Behind" as the Q3D Master render mode, and making your bottom layer transparent. If anything this might be due to the fact your C2 Project has the project setting "Clear Background" set to "No". In any case i need more information to try to fix the problem, because i can't reproduce it with what you've given me.

    kmsravindra

    Sorry i've been busy and you're using a later version of construct than i have installed so i couldn't quickly check without downloading and re-installing things.

  • Just gonna throw out that a few of us are still stuck in CC big projects, so anything that can help free things down the road would be appreciated. Even if it is just breaking a cap up into a bunch of images and stuff.

    Granted, I think those of us (... it might just be me and Konjak at this point?) who are stuck this deep probably have the capability to sorta... brutally export stuff in a sloppy manner through construct itself, but just being able to get graphics and layouts into C2 would do wonders for the possibility of porting large-as-fuck projects.

    Me and Davio are still stuck with it for towerclimb too

  • Ralph

    Collisions with a terrain/triangle mesh are pretty expensive/slow, especially for physics where accurate collision manifolds are needed. It'll be really slow in javascript so there isn't any support for them right now. In the future I might try adding it but it's very difficult. for now if you really want terrain support it's possible to fake it for a small number of objects with ray-casters to check penetration depth since they collide with geometry, but they are very slow. this would be good for something like a character controller. You could also do it other ways if you had heightmap data in an array.

  • kmsravindra

    sorry i've been busy, ill take a look tomorrow.

    UberLou

    You need to turn off "debug" on the bones, making them invisible will still trigger the creation of the debug object which is extra slowdown you can avoid. The boxes are for viewing the collision shape associated with the bone and are unnecessary unless you want to view/debug the collision shapes on the skeleton.

    As for the 3DS exporter, i haven't used it (i dont have a copy of 3DS) so i'm not sure of the workflow. this SO post makes me believe right now it can't directly be done from 3DS (http://stackoverflow.com.80bola.com/que ... -js-from-3) the suggested solution is the same as what you're doing (manually merge).

    I know the blender exporter can export multiple animations. It's possible you'll have to transfer things to blender first.

  • Ralph

    In the three.js zip file you downloaded from http://threejs.org/, there is a model with multiple animations that you'll find at:

    examples/models/skinned/marine/marine_anims.js

    you can try the "Alert anim. info" action with the skeletal controller/morph controller to see if Q3D recognized your animations in the model file. If the animation isn't playing it probably isn't properly exporting, so it's something wrong with the file.

    to play an animation you simply have to play it by using it's name with the action.