Hi, the addon seems to work great in preview but having trouble exporting, NW.js just shows a black screen and WebView2 says "failed to register window class". Never seen this, any ideas?
hi, after 3d plugin update i have problems with editing my game, i think it was problem with something in my project. i open one of your examples and also i have problem. When i edit events in Evens Sheet nothing happen, when i switch tab to layout with 3D objects this screen appear
did you add a new model? I have not run into this particular error before, but the comment non power of 2 tiled textures not supported is interesting and might be due to a specific model, texture, texture type being used, hmm. can you please let me know which of the sample projects also causes the issue? in the meantime do you need help getting a previous version of the addon?
hi! i prepare two videos, first is from my project: take look when red screen appears, when 3d object is visible on screen
second video is downloaded from your examples, only few cause error (set time scale of video to 2xI hope this help you, maybe older versions maybe help solve problem, can you add to download few previous versions? i will check them and let you know. Kind regards!
This provided some great hints about where to go look. Thanks for all that testing, very much appreciated. Unfortunately I am like Scirra, I am a small group (1 person :) ) and need my users to help me test :)
Ok, I took a look at this. These examples work on my set up and after tracing some stuff down, it looks like you are running the editor using webgl1 and not webgl2 or webGPU. The image textures trigger the issue, because they are non-power of 2. and tiled/repeat. WebGL1 does not support non power of 2 textures with all modes (e.g. tiled / repeat mode).
My suggestion is to work using webGL2 in editor and runtime. If that is not possible, you need to make all your textures power of two, where ever these issues show up.
That is very good work ! I've a 3D model that is a part of mountainous landscape and I'd like to make an interactive manipulation of that landscape. ow can I use touch/pan/swipe to move, zoom and rotate this model ?
Hi! I have a rather complicated case, but I would like to get help with it. I have 2 (or more) instances of one 3dObject, both use a texture with an alpha channel (in screenshot No. 3), but only one of all instances correctly displays the inner part (reverse side) of 3dObject (in screenshot No. 1), the other does not display it, it happens only on some faces the object (in screenshot #2). Is there any way to fix this or is it a mistake? Thanks!
Ah, this is tough one. I presently don't do anything special with sorting faces based on average depth before rendering, so objects with transparency / alpha are hard to deal with, because they may render out of the order needed by transparency (canonical 3d / transparency issue.)
If you are just rendering a cube though, depending on the orientation, you may just want to try 3DShape w/ the textures you want, if I remember correctly, for the simple cube case, C3 does sort as best as it can.
Unfortunately, in my case it will not be possible to use 3D Shape, at this stage of development the models are very different (in screenshot 1 and 2 with triangulation).
In addition, I want to use bone animation to get the result as in my other projects on PlayCanvas.
video 1:
video 2:
I think solving this problem will really help in developing interesting and beautiful games on C3.
May I ask if this area of 3d Object development is a priority?
I am ready to help with the work on the plugin, but unfortunately I do not have sufficient programming skills.
I might be able to work on this in a couple weeks, the sort would only be for one mesh, not between meshes and it would happen on the CPU. It would also require all rotate, scale, transform operations be done on the CPU too (normally they are done on the GPU). This can put a heavy load on CPU. It is a difficult problem with how we can render using C3.
If we could get at the pre-draw shade we could do screen door.
I am open to other ideas on it, also since it is open source other PRs (other people submitting code/changes).
The problem is displaying the back face of an object when there is an alpha channel in the texture. I added a few screenshots, the difference should be better visible there
Is there a way to when I change the model on the properties bar to instantly update on the editor? From one model to the other? I find that i need to keep exiting and reentering construct.
Not right now, but on my list to update, it's just a tricky/old part of the code, doing the initial load and initialization), I might take a hammer to it though and just blow away the whole object and try initialization again. Will try an experiment tomorrow.
If it is beyond curiosity and discussing for an actual commission, we would need to discuss details. You can find me on the Construct Community Discord. Estimates for simpler bounded work is easier. This feature not so much.
hi, i attempted exporting games that use 3d models with this plugin in the past and always ran into a blackscreen error when exporting with NW.js. i searched previously on github and the c3 forums and found that NW.js had a bug that was causing this. just checking if theres been any updates on this bug and if exports are hopefully working?
Is it possible for the gltf path to have a drop down list of all the names of all the glb and gltf in the Files for QoL? Kind of like instance variables.
To be honest, I only wanted to study the template because of the night vision flashlight effect, was that a modification of yours, or is it from his template? If it is yours, would you have a template, any template, that uses this type of flashlight? (it doesn't have to have the night vision effect) I'm creating a PSX Horror, and I just wanted to create a flashlight of this type, but I couldn't, so I wanted to study a template.
I'm really having a hard time with this lighting part, I tried to use ss3d to create the flashlight but the way I think of doing it isn't working. That's why I'm looking for a template to study. I don't care if you charge me for it, but could you provide me with any template that has this type of working flashlight that I can turn on and off?
Hello, first of all congratulations on the great work you've been doing for the C3 community, I recently acquired 2 of your plugins and my head is bubbling with ideas with the possibilities that have opened up and I'm already developing a project... I'm managing to work well with 3D so far, but I'm having a hard time understanding how the illuminations work. Even looking at all the examples you've provided, I can't create some of the things I wanted to.
For example, I'd like to know how to create this type of lighting:
And I'd like to know if it's possible to create this type of lighting on 3D signs or in some other way:
And my last question, is how I could create a more realistic Lantern... I saw on your twitter this example https://twitter.com/kindeyegames/status/1673439254016565250 that you posted of a test, and is it currently possible to create something the same or similar?
C3 SDK and effects do not support very good lighting. So, we have to do a few compromises. For flat lighting of the 3DObject, you can have multiple lights, including spot lights. However, the only work on a per face basis. So, for example on the building above each side is a single face with texture, so each face only have a single light value for the entire face, so you won't get nice liking like you have above.
You could subdivide the walls into many triangles and it could start to look like the above, however, that requires a lot of performance to do. I find that the 3DObject lighting works best on a little more complicated, animated models.
This lighting is world space lighting (e.g. the lights can be placed in the world and they work as expected as you change the camera location). These are ACEs of 3DObject.
The other option is the screenspace lighting. This lighting is done by looking at the depth normals of the screenspace and using though to determine lighting on a fragment (e.g. pixel) basis. It look pretty nice, but it has the restriction that the light _will_ change as the camera changes orientation (the lighting is _not_ world based). So, in general it works better for some ambient, distant lighting and lighting sources that are coming from the direction of the camera. This is an effect addon.
Some other ideas to think about: bake in lighting on 3d models. For example in the above, if the lighting doesn't change you could bake the lighting into the textures in blender, etc.
i will start to play around lighting now.i didnt really follow ur updates but, is there directional lights yet? like a directional light that bakes for every object on start of layout?im making a big city and i want to light every building evenly at start of layout. only bake not realtime. and didnt you have one for sprites billboard>? what happen to that one
a prebaked direction light for each 3d object at any angle would be a cool option , is it possible?
You can apply lights per object, if you need a common light, I usually use a family for all the objects and apply lights ACEs to the family. Look at the devlog for flat light updates and examples. You can bake on start.
The version for 3DShapes was just an experiment, in general it takes too much CPU and was a monkeypatch (hack to C3 engine.) It has been removed - I was hoping Ashley would help us adopt it and make it more efficient, but he declined.
Hello! Can i use custom collision shape with your plugin ? Can i use image point with 3d object? Can i navigate in scene free like in Unreal? This is very raw i think, and canot be useful for serious game.
This a 3d model renderer addon for Construct 3. It is not designed to handle 3d collision, 3d camera management. The information on the addon is in the itch page, dev logs and example projects.
Yah, that's tough. Perhaps another option is making the foreground opacity lower for objects in the way. Can use 2d los or 3d raycast to determine which objects. Another alternative is to see Foozle's example which does WoW style camera and brings the camera forward so it's no longer blocked.
Hi. The game crashes on smartphones. There seems to be a problem with resource allocation, how to fix it? The person and environment models are from kenney. Link: https://s3.eponesh.com/games/draft/1116/v17/
That is weird. I have latest update and that doesn't happen. Need to see your events. Does it happen when you delete the character from layout? Can you upload the model with the problem? I want to test it.
It helps most if you can provide a test project case, so I can see exactly how the addon is being used. For example, using a lot of instance model without using a template for them will cause GPU memory to grow.
Hi, I'm working on working on skybox right now and just wanted to ask if your starfield clouds effect work with 3d? Is it an effect for a sprite or does it cover whole layout? Can it be used on 3d box? If it does, do you have one with just clouds? Im looking for one kind of like this https://www.shadertoy.com/view/4tdSWr or thishttps://www.shadertoy.com/view/XslGRr
Hi, lost my old account but, I bought this last year but I have been in gdevelop since and thinking about rebuying this and coming back to construct. Gdevelop 3d is good with threejs addon but the engine itself is just annoying and worst in every other way. I just want to ask has the instancing got better on this? Like in gdevelop I was making a 3d vampire survivor clone and 500 (1k poly) enemy objects runs fine, but I remember on construct with this addon, I lagged with only around 40-50 objects. I know constructs renderer isn't really meant for 3d but did you ever find a way to make instancing better? Im not making a vampire survivor clone but I would like npc's walk around a town in an rpg game. So like 50 (1k-2k poly) npc with a city also.
Some of the 3d games people are working on in the discord got me fired up for a 3d rpg lmao. If a better instancing isnt possible I understand, will still come back to construct and just make city in 3d and have the characters as 8 direction billboard. I tested one of the uploads there for 8 direction rpg style and was able to make 1000+ characters on screen np. Which is weird because ive tried the same thing on gdev and massive lag. Seems like gdev performance for 3d is better than construct, but constructs 2d and collision performance is waaay better than gdev.
50 objects low poly is fine. You can do some optimizations like set animation rate to 0 or object invisible when its far away or behind walls if you want a lot of npc.
Also, not a lot of games has over 50 character/npc/enemies on screen. I made tests and 100 on screen isn't a problem which should be enough for 95% of game genres. Games like the Ps2 Dynasty Warriors games give an illusion of 1000s of units, but in reality there's only like 40-50 enemies on screen at once, further ones aren't visible and the Ai is so basic. Creating smart enemies that uses collision checks and loops and stuff usually is the performance killer if not designed correctly. Gdevelop can display 1000s enemies sure, but will lag once you start giving them behaviors or collision checks. 1000s of static object instances like trees in the background is nice tho, something Gdevelop is good at.
Yeah ik. Just want things to run at full speed even for lower end machines too. 40 on screen is fine,but like you said, I might need many trees lol. Will test for myself. Playing with billboard sprites for now instead of 3d characters.
Made a cool aiming mechanic where the camera only turns when going out of the aim bounds. Free aim style and hit detection using layertocanvas, but more suited for a robot game/bullet hell style. My next game after I finish my current jump on head platformer lol.
To anyone who wants bullet zelevation to work, its just player.zelevations - target.zelevation
Working on some 3D prototypes with this. My game company itself is focused on a MMORPG which is 2.5D, using my Spine addon for skinning and animations. We use C3 for the client side.
2.5d like Ragnarok online? I loved those graphics. Wish more people used 2.5d, I loved that look. I'm working with 2 other people on making a 2.5d visual novel but after, I would love to start a 2.5d platformer like the Prinny games. Something like this looks very possible now in Construct.
just thought of a good game idea how to use this. there was this ghost in the shell game for ps1 where your a robot and u can scale walls and ceilings and stuff. this aiming looks good for it. hit me up if you wanna collab or something.
Just watched gameplay for that and..... that looks difficult lol. If you figure out the math on how to do that walking on walls/ceilings with camera rotating stuff then sure. I'm just amazed something in the Ps1 days could do that.
Is this suppose to work or do the models need the keyframes? Left one is rotating using set rotation, and right one is blender animation. Should I just give walls a really tiny animation in blender?
In terms of the look - are you talking about the textures (they seem to be changing resolution based on distance, like switches between nearest mip level). Or are you talking about something else? Also very low viewport resolution overall w/ nearest and no scaling (e.g. display must be integer multiplication of the original, letterbox integer).
Yeah, when the textures kinda snap to different mappings as you move closer and further away, but I tried Duckstation emulator with 4k and geometry fix, and it actually looks good when only the characters have a little bit of jitter and the wall/floor textures don't snap around. Low res also looks good but my game needs you be able to see into the distance clearly for far jumps. Will upload a demo after I fix some bugs.
Do you use nearest for your texture in blender and for your project? Have you tried both of those? If you have a demo project and models, I can a look too.
Sure, this is what I use for graphics test, but I have another problem that's kinda important lol. Why is this lagging while turning or jumping when looking at all the enemies when its clearly over 60fps?
Like turning with the arrow keys and jumping. Standing still looking at enemies, theres obv no lag. Also no lag when turning without enemies on screen.
I've tried it also with mouse movement and regular rotate angle with same result. Car behavior is actually the less laggy one lol.
Retested with more enemies at 30 fps, and its exactly the same as when its at 90+ fps lol, ZERO lag when not moving camera or jumping.
Weird, because it looks like its only the movement lagging not the animations for 3dobjects. It might be Construct's way of handling timedelta and fps?
I'll experiment and see if there's a way to smoothen camera so it doesn't look like its skipping frames. 50fps+ should be way smoother than this, maybe a motion blur can hide it.
A little hard to tell, since this is a perf case, I do note that with worker animations on on Mac, I get a smooth 60fps and it looks good. It might just be scaling number of models?
When I change a 3d objects gltf path to something else, the current model does not change in the editor without saving and reloading Construct again. Is there a trick or work around to make it show the new paths object without reloading Construct? Like some sort of refresh but without refreshing whole site.
Yes, that's an old issue, having to do with the unsophisticated ( :) ) way I did the model loading in the editor. I'll put that one back on my list to take a look at, it would be a nice QoL thing.
Would be very nice. Also, idk if possible but, when replacing a object with same name would be amazing. Constantly editing in blender and overwriting the same object to make stuff match each other lol.
When you make a edit in blender for your model (like color change) and you replace the glb with the edited one. The change doesn't update in the editor.
Ah, I see. I'll need to check if I can detect that. Before that, I have on my list updating when the file name changes. If that becomes available, this should be doable also.
Hey! happy to say that with the newest update with webview2 comes with no errors exporting with workers enabled. For comparison, this is my exported game with the latest nw.js. BLACK SCREEN + CREATEOBJURL ERROR. So happy to finally ditch nw.js lol. My game actually feels a lot smoother too.
Still broken, but I see Ashley responded. Would still be cool to have this fix to have different export options, and nw.js still is the only one with transparent steam overlay.
any way to make sides like this to look like flat shading? kinda like this but nicer lol.this would be a cool addition to ssao, i put sampling at .1 and moving camera left to right looks pretty cool.
kind of, but the big issue is that ground plane angle is typically such that it gets heavy ao applied too, so the ground becomes dark, which I imagine you don't want. Will look a bit more over time, but definitely don't count on it. Of course an alternative is to use the flat lighting ACEs on 3DObjects directly.
Try setting the original texture in the model to nearest and use a low resolution texture and have the project also run nearest. In addition, you may try adding some slight jitter to the camera view.
I love your plugin, thank you for creating it, I'm trying to upload my file to construct 3 arcade but since I can't upload 3D models I'm trying to get the models to load by uploading them to a url, how can I upload a model through the url, I've tried everything in google drive dropbox but it does not recognize the file when entering the url, some help please, I am developing a 3D multiplayer game
To upload to c3 arcade, try adding an additional. ".txt" to the glb/gltf filename in the project and change path to match. Good luck with your game, send a link when you can.
You may also need to use gltf format instead of glb.
Thank you very much, I was able to upload the game thanks to your mode, my game still has a long way to go and bugs to resolve since it is the alpha version, it is only the bases, Thank you very much. I send you the link
No, it does not interact with 3D Shape. You can make models of the same geometry as 3D shape and load yhem into 3D Object and do the rotation as needed.
the vertex rounding is so cool! since the ps1 graphics is popular right now. would this effect only work with models with animation? does non animated stuff like walls or buildings work? will test after i build my pc
You might want to do some other things too, like lock the 3DCamera to rounded x,y,z coordinates, similar for object locations, similar for rotation angles and camera angles, try it out!
Just saw and tested this, I love this look! I can't get it to work on trees or walls without animations though. Is this possible like in this video? At 3:50. Or something that makes textures look crooked. Tried rounding stuff, nothing really worked out.
You have to turn it off when the object isn't near your camera view. You wont notice this from a distance anyway. Without turning it off though, around 15 highish poly animated models(8k+tri) onscreen at once, the cpu is 10%-15% increase and fps drop is up to 15-20. I don't know if its the same with non animated stuff, I can't get it to work to test. Haven't tested with low poly models either. Should be pretty good performance unless your making a game with 50+ enemies on screen at once, which would probably still be okay with lower poly's and good optimization techniques.
I'll just use blender and move uv around for crooked textures. I gave the buildings a tiny animation that move sideways, now to just stop it when camera isn't moving much. Pretty sure this isn't the best way to do this but it still works lol. Will definitely use this to create ps1 style game after my main game.
Right, the textures in PS1 are not perspective correct, perhaps you can play with 3D Camera FOV (dynamically?) and also changing between orthogonal and perspective for the 3DCamera
intersting to looking a 3d mesh point from your project uploaded, but i still did not know how to set point on a node? i try to download the model and import it on blender i thought its from origin but its not, any advice?
Ah, I see. We can't change the vertex shader, but we could play with vertex values on the CPU. So would take some CPU perf to do it, I'll take a look. Adding to the list for later.
← Return to asset pack
Comments
Log in with itch.io to leave a comment.
Hi, the addon seems to work great in preview but having trouble exporting, NW.js just shows a black screen and WebView2 says "failed to register window class". Never seen this, any ideas?
For some reason disabling minification fixed this for anyone also stuck
Hello, i ran into a problem, the 3d objects don't' show in the editor, but in the preview it appears just fine, any ideia how to fix it
Just try reloading the project. Currently it does not update if the path is changed between different models.
hi, after 3d plugin update i have problems with editing my game, i think it was problem with something in my project. i open one of your examples and also i have problem. When i edit events in Evens Sheet nothing happen, when i switch tab to layout with 3D objects this screen appear
did you add a new model? I have not run into this particular error before, but the comment non power of 2 tiled textures not supported is interesting and might be due to a specific model, texture, texture type being used, hmm. can you please let me know which of the sample projects also causes the issue? in the meantime do you need help getting a previous version of the addon?
hi! i prepare two videos, first is from my project: take look when red screen appears, when 3d object is visible on screen
second video is downloaded from your examples, only few cause error (set time scale of video to 2xI hope this help you, maybe older versions maybe help solve problem, can you add to download few previous versions? i will check them and let you know. Kind regards!Thanks for all of this I made of a few of the older versions available.
This provided some great hints about where to go look. Thanks for all that testing, very much appreciated. Unfortunately I am like Scirra, I am a small group (1 person :) ) and need my users to help me test :)
Ok, I took a look at this. These examples work on my set up and after tracing some stuff down, it looks like you are running the editor using webgl1 and not webgl2 or webGPU. The image textures trigger the issue, because they are non-power of 2. and tiled/repeat. WebGL1 does not support non power of 2 textures with all modes (e.g. tiled / repeat mode).
My suggestion is to work using webGL2 in editor and runtime. If that is not possible, you need to make all your textures power of two, where ever these issues show up.
Do you think 3d object and 3d effects together are stable enough to release games with? Do you recommend not using 3d effects yet?
I think it's ok, but if you have some different platforms to try a slice of your game on, that's always good to do.
That is very good work ! I've a 3D model that is a part of mountainous landscape and I'd like to make an interactive manipulation of that landscape. ow can I use touch/pan/swipe to move, zoom and rotate this model ?
Sure, I would look more at controlling the C3 3d camera around a static model.
Thank you ! Actually, I was also interested in having the object move in front of a static camera.
for static camera you can use set rotation and set scale ACEs
Would you have any demo file showing how to do this ?
No, but just try out the ACEs for set rotation and scale, they rotate and scale the object, which seems to be what you are looking for.
Here is test, I think it looks cool.
Looks great!
I'm making an advance wars style strategy game, started 2d but will started to add 3d for the battle sequences.
Nice!
Hi! I have a rather complicated case, but I would like to get help with it. I have 2 (or more) instances of one 3dObject, both use a texture with an alpha channel (in screenshot No. 3), but only one of all instances correctly displays the inner part (reverse side) of 3dObject (in screenshot No. 1), the other does not display it, it happens only on some faces the object (in screenshot #2). Is there any way to fix this or is it a mistake? Thanks!
Ah, this is tough one. I presently don't do anything special with sorting faces based on average depth before rendering, so objects with transparency / alpha are hard to deal with, because they may render out of the order needed by transparency (canonical 3d / transparency issue.)
If you are just rendering a cube though, depending on the orientation, you may just want to try 3DShape w/ the textures you want, if I remember correctly, for the simple cube case, C3 does sort as best as it can.
Unfortunately, in my case it will not be possible to use 3D Shape, at this stage of development the models are very different (in screenshot 1 and 2 with triangulation).
In addition, I want to use bone animation to get the result as in my other projects on PlayCanvas.
video 1:
video 2:
I think solving this problem will really help in developing interesting and beautiful games on C3.
May I ask if this area of 3d Object development is a priority?
I am ready to help with the work on the plugin, but unfortunately I do not have sufficient programming skills.
Thanks!
I might be able to work on this in a couple weeks, the sort would only be for one mesh, not between meshes and it would happen on the CPU. It would also require all rotate, scale, transform operations be done on the CPU too (normally they are done on the GPU). This can put a heavy load on CPU. It is a difficult problem with how we can render using C3.
If we could get at the pre-draw shade we could do screen door.
I am open to other ideas on it, also since it is open source other PRs (other people submitting code/changes).
This is great news! I will be looking forward to new updates of 3d objects and continue working on the project. Thanks!
It works fine for me? I dont get this problem.
The problem is displaying the back face of an object when there is an alpha channel in the texture. I added a few screenshots, the difference should be better visible there
yikes, i'm already optimizing as much as I can to keep cpu low. this scares me lol. i wish we could use gpu more
The possible fix I am talking about above would be optional to help with the transparency case. It would be enabled per node/mesh.
Try putting it on the topmost layer, and 3D distance for the Draw Order.
I have tried this, in this case only one instance of the object will be displayed correctly
Check out the new screendoor dither in the frag light effect. it definitely has its own artifacts, but might be interesting for this case.
Frag light is a separate itch project.
Hi! Trying to add ssao-1-6-0.c3addon on the latest version and somehow it doesn't work? Or maybe i'm not able to find it on the effects tab?
Or maybe an example that uses it?
Nevermind, Touched somethings on the settings and managed to make it work!
Perhaps you were using webgpu, right now the effect only supports webgl
Is there a way to when I change the model on the properties bar to instantly update on the editor? From one model to the other? I find that i need to keep exiting and reentering construct.
Not right now, but on my list to update, it's just a tricky/old part of the code, doing the initial load and initialization), I might take a hammer to it though and just blow away the whole object and try initialization again. Will try an experiment tomorrow.
Hi. Will there be an option to control the bones separately?
Probably not unless someone has an example and commissions the work from myself or another dev.
out of curiosity how much would a commission like this cost?
If it is beyond curiosity and discussing for an actual commission, we would need to discuss details. You can find me on the Construct Community Discord. Estimates for simpler bounded work is easier. This feature not so much.
Is there a way to make vertex colors work?
https://www.mediafire.com/file/wl6fij2evb5sn3f/123.glb/file
Using this model for test. Do I have to bake?
Sorry, I wish there was, it is a C3 SDK limitation right now, I and others have requested for the feature to be added to the C3 SDK.
Yes, need to bake for now.
Ok thanks.
hi, i attempted exporting games that use 3d models with this plugin in the past and always ran into a blackscreen error when exporting with NW.js. i searched previously on github and the c3 forums and found that NW.js had a bug that was causing this. just checking if theres been any updates on this bug and if exports are hopefully working?
Try exporting without worker enabled. As far as I know, this is a general C3 error, not 3DObject specific.
What's this zelevation0 for?
obsolete, have to keep it so it doesn't break old programs
Is there an option to display vertex colors?
Unfortunately no, the C3 SDK doesn't support that (and we have asked a few times)
Hi. How can I get an angle of the node?
There is not a function for that right now, I will look at adding it in the new year.
Is it possible for the gltf path to have a drop down list of all the names of all the glb and gltf in the Files for QoL? Kind of like instance variables.
I have not run across a way to do that in the C3 Editor SDK yet (the editor SDK is quite limited compared to the Runtime SDK.
Do you still have this template available?
https://www.construct.net/en/free-online-games/fps-template-3d-goodies-47450/pla...
That uses a paid template, if you buy the template and I get a verification from the dev, I can give you my modified version. Just let me know.
To be honest, I only wanted to study the template because of the night vision flashlight effect, was that a modification of yours, or is it from his template? If it is yours, would you have a template, any template, that uses this type of flashlight? (it doesn't have to have the night vision effect) I'm creating a PSX Horror, and I just wanted to create a flashlight of this type, but I couldn't, so I wanted to study a template.
Pretty simple it was ss3d light with a spotlight in the center, with green color and ambient dark green color + pixellate
I'm really having a hard time with this lighting part, I tried to use ss3d to create the flashlight but the way I think of doing it isn't working. That's why I'm looking for a template to study. I don't care if you charge me for it, but could you provide me with any template that has this type of working flashlight that I can turn on and off?
https://twitter.com/kindeyegames/status/1673439254016565250
Hello, first of all congratulations on the great work you've been doing for the C3 community, I recently acquired 2 of your plugins and my head is bubbling with ideas with the possibilities that have opened up and I'm already developing a project... I'm managing to work well with 3D so far, but I'm having a hard time understanding how the illuminations work. Even looking at all the examples you've provided, I can't create some of the things I wanted to.
For example, I'd like to know how to create this type of lighting:
And I'd like to know if it's possible to create this type of lighting on 3D signs or in some other way:
And my last question, is how I could create a more realistic Lantern... I saw on your twitter this example https://twitter.com/kindeyegames/status/1673439254016565250 that you posted of a test, and is it currently possible to create something the same or similar?
Thanks in advance.
C3 SDK and effects do not support very good lighting. So, we have to do a few compromises. For flat lighting of the 3DObject, you can have multiple lights, including spot lights. However, the only work on a per face basis. So, for example on the building above each side is a single face with texture, so each face only have a single light value for the entire face, so you won't get nice liking like you have above.
You could subdivide the walls into many triangles and it could start to look like the above, however, that requires a lot of performance to do. I find that the 3DObject lighting works best on a little more complicated, animated models.
This lighting is world space lighting (e.g. the lights can be placed in the world and they work as expected as you change the camera location). These are ACEs of 3DObject.
The other option is the screenspace lighting. This lighting is done by looking at the depth normals of the screenspace and using though to determine lighting on a fragment (e.g. pixel) basis. It look pretty nice, but it has the restriction that the light _will_ change as the camera changes orientation (the lighting is _not_ world based). So, in general it works better for some ambient, distant lighting and lighting sources that are coming from the direction of the camera. This is an effect addon.
Some other ideas to think about: bake in lighting on 3d models. For example in the above, if the lighting doesn't change you could bake the lighting into the textures in blender, etc.
Okay, that helped me understand a bit, I think the idea of doing the lighting on the textures is valid and simpler to do.
Is there a way to clean the console logs? I have way too many 3d objects there.
do you have the debug property checked?
Nope, all unchecked.
ok, thanks for the example, I'll look into it today
https://kindeyegames.itch.io/c3-3dobject-alpha/devlog/646135/fix-log-remove-some...
Thanks, all clean.
i will start to play around lighting now.i didnt really follow ur updates but, is there directional lights yet? like a directional light that bakes for every object on start of layout?im making a big city and i want to light every building evenly at start of layout. only bake not realtime. and didnt you have one for sprites billboard>? what happen to that one
a prebaked direction light for each 3d object at any angle would be a cool option , is it possible?
You can apply lights per object, if you need a common light, I usually use a family for all the objects and apply lights ACEs to the family. Look at the devlog for flat light updates and examples. You can bake on start.
The version for 3DShapes was just an experiment, in general it takes too much CPU and was a monkeypatch (hack to C3 engine.) It has been removed - I was hoping Ashley would help us adopt it and make it more efficient, but he declined.
nice examples, i understand how to use it all now.
Hello! Can i use custom collision shape with your plugin ? Can i use image point with 3d object? Can i navigate in scene free like in Unreal? This is very raw i think, and canot be useful for serious game.
Where i can read a documentation or instruction?
This a 3d model renderer addon for Construct 3. It is not designed to handle 3d collision, 3d camera management. The information on the addon is in the itch page, dev logs and example projects.
Is this effect possible to do? Seeing the character on other side of wall while the wall is 100 opacity. Or do you know a way how this can be done?
EDIT: Nevermind. I think destination out is the answer, but it sucks with 3d camera lol
Yah, that's tough. Perhaps another option is making the foreground opacity lower for objects in the way. Can use 2d los or 3d raycast to determine which objects. Another alternative is to see Foozle's example which does WoW style camera and brings the camera forward so it's no longer blocked.
theres one in the discord like this,it looks like this effect.
any chance of a 3d raycast?
Check out my C3 3D Physics addon: https://kindeyegames.itch.io/construct-3-cannon
Hi. The game crashes on smartphones. There seems to be a problem with resource allocation, how to fix it? The person and environment models are from kenney.
Link:
https://s3.eponesh.com/games/draft/1116/v17/
Make a test demo? or share the file? Your game is crashing for me too on PC.
it's not about the project, there is a leak of RAM.
That is weird. I have latest update and that doesn't happen. Need to see your events. Does it happen when you delete the character from layout? Can you upload the model with the problem? I want to test it.
EDIT: I found it nevermind. I will test.
EDIT: I tested 100 on screen no problem.
It helps most if you can provide a test project case, so I can see exactly how the addon is being used. For example, using a lot of instance model without using a template for them will cause GPU memory to grow.
For an example of prefab/template, see https://kindeyegames.itch.io/c3-3dobject-alpha/devlog/459808/example-prefab-project
Hi, I'm working on working on skybox right now and just wanted to ask if your starfield clouds effect work with 3d? Is it an effect for a sprite or does it cover whole layout? Can it be used on 3d box? If it does, do you have one with just clouds? Im looking for one kind of like this https://www.shadertoy.com/view/4tdSWr or thishttps://www.shadertoy.com/view/XslGRr
Nevermind, I found your cloud addon on the main site. I will play around with that one.
Can I somehow hide the individual parts of the 3d model? There are several types of weapons tied to the character's hand and they need to be hidden.
Node disable, look at the dev log regarding this.
In my case, it doesn't work, I enter the node name and nothing happens, I'll throw an example later
Just saw your new rotate object addon, thanks. I will now be returning to c3 lol
Hi, lost my old account but, I bought this last year but I have been in gdevelop since and thinking about rebuying this and coming back to construct. Gdevelop 3d is good with threejs addon but the engine itself is just annoying and worst in every other way. I just want to ask has the instancing got better on this? Like in gdevelop I was making a 3d vampire survivor clone and 500 (1k poly) enemy objects runs fine, but I remember on construct with this addon, I lagged with only around 40-50 objects. I know constructs renderer isn't really meant for 3d but did you ever find a way to make instancing better? Im not making a vampire survivor clone but I would like npc's walk around a town in an rpg game. So like 50 (1k-2k poly) npc with a city also.
Some of the 3d games people are working on in the discord got me fired up for a 3d rpg lmao. If a better instancing isnt possible I understand, will still come back to construct and just make city in 3d and have the characters as 8 direction billboard. I tested one of the uploads there for 8 direction rpg style and was able to make 1000+ characters on screen np. Which is weird because ive tried the same thing on gdev and massive lag. Seems like gdev performance for 3d is better than construct, but constructs 2d and collision performance is waaay better than gdev.
50 objects low poly is fine. You can do some optimizations like set animation rate to 0 or object invisible when its far away or behind walls if you want a lot of npc.
Also, not a lot of games has over 50 character/npc/enemies on screen. I made tests and 100 on screen isn't a problem which should be enough for 95% of game genres. Games like the Ps2 Dynasty Warriors games give an illusion of 1000s of units, but in reality there's only like 40-50 enemies on screen at once, further ones aren't visible and the Ai is so basic. Creating smart enemies that uses collision checks and loops and stuff usually is the performance killer if not designed correctly. Gdevelop can display 1000s enemies sure, but will lag once you start giving them behaviors or collision checks. 1000s of static object instances like trees in the background is nice tho, something Gdevelop is good at.
Yeah ik. Just want things to run at full speed even for lower end machines too. 40 on screen is fine,but like you said, I might need many trees lol. Will test for myself. Playing with billboard sprites for now instead of 3d characters.
Made a cool aiming mechanic where the camera only turns when going out of the aim bounds. Free aim style and hit detection using layertocanvas, but more suited for a robot game/bullet hell style. My next game after I finish my current jump on head platformer lol.
To anyone who wants bullet zelevation to work, its just player.zelevations - target.zelevation
Nice, especially for sniper like play.
hi kindeyegames ,just wondering, are you making any games with this or you just make addons?
Working on some 3D prototypes with this. My game company itself is focused on a MMORPG which is 2.5D, using my Spine addon for skinning and animations. We use C3 for the client side.
ah cool. good luck on it
2.5d like Ragnarok online? I loved those graphics. Wish more people used 2.5d, I loved that look. I'm working with 2 other people on making a 2.5d visual novel but after, I would love to start a 2.5d platformer like the Prinny games. Something like this looks very possible now in Construct.
That game 100% possible to make now. Actually it's weird that there isn't an influx of 2.5D platformers now that it's so easy to make.
just thought of a good game idea how to use this. there was this ghost in the shell game for ps1 where your a robot and u can scale walls and ceilings and stuff. this aiming looks good for it. hit me up if you wanna collab or something.
Just watched gameplay for that and..... that looks difficult lol. If you figure out the math on how to do that walking on walls/ceilings with camera rotating stuff then sure. I'm just amazed something in the Ps1 days could do that.
Which file am I supposed to download? There are so many!
Download the 3DObject-2-53-1.c3addon file, most of the rest are examples or additional effects.
Look at the devlogs for some discussion of the examples.
https://cristo1.itch.io/vertex-test
Is this suppose to work or do the models need the keyframes? Left one is rotating using set rotation, and right one is blender animation. Should I just give walls a really tiny animation in blender?
Trying to get this look on the walls.
Also, for anyone trying to make Ps1 style games which Construct 3 is now, we are basically Ps1.5 lol. This is interesting.
https://www.david-colson.com/2021/11/30/ps1-style-renderer.html
In terms of the look - are you talking about the textures (they seem to be changing resolution based on distance, like switches between nearest mip level). Or are you talking about something else? Also very low viewport resolution overall w/ nearest and no scaling (e.g. display must be integer multiplication of the original, letterbox integer).
Yeah, when the textures kinda snap to different mappings as you move closer and further away, but I tried Duckstation emulator with 4k and geometry fix, and it actually looks good when only the characters have a little bit of jitter and the wall/floor textures don't snap around. Low res also looks good but my game needs you be able to see into the distance clearly for far jumps. Will upload a demo after I fix some bugs.
Do you use nearest for your texture in blender and for your project? Have you tried both of those? If you have a demo project and models, I can a look too.
Sure, this is what I use for graphics test, but I have another problem that's kinda important lol. Why is this lagging while turning or jumping when looking at all the enemies when its clearly over 60fps?
https://www.mediafire.com/file/p4jgumuwdtu1pu0/LookTest.c3p/file
Like turning with the arrow keys and jumping. Standing still looking at enemies, theres obv no lag. Also no lag when turning without enemies on screen.
I've tried it also with mouse movement and regular rotate angle with same result. Car behavior is actually the less laggy one lol.
Retested with more enemies at 30 fps, and its exactly the same as when its at 90+ fps lol, ZERO lag when not moving camera or jumping.
Weird, because it looks like its only the movement lagging not the animations for 3dobjects. It might be Construct's way of handling timedelta and fps?
I'll experiment and see if there's a way to smoothen camera so it doesn't look like its skipping frames. 50fps+ should be way smoother than this, maybe a motion blur can hide it.
Also have workers off so it drops fps more.
A little hard to tell, since this is a perf case, I do note that with worker animations on on Mac, I get a smooth 60fps and it looks good. It might just be scaling number of models?
When I change a 3d objects gltf path to something else, the current model does not change in the editor without saving and reloading Construct again. Is there a trick or work around to make it show the new paths object without reloading Construct? Like some sort of refresh but without refreshing whole site.
Yes, that's an old issue, having to do with the unsophisticated ( :) ) way I did the model loading in the editor. I'll put that one back on my list to take a look at, it would be a nice QoL thing.
Would be very nice. Also, idk if possible but, when replacing a object with same name would be amazing. Constantly editing in blender and overwriting the same object to make stuff match each other lol.
Can you please add more details about the same name request? I am not sure what you mean.
When you make a edit in blender for your model (like color change) and you replace the glb with the edited one. The change doesn't update in the editor.
Ah, I see. I'll need to check if I can detect that. Before that, I have on my list updating when the file name changes. If that becomes available, this should be doable also.
Hey! happy to say that with the newest update with webview2 comes with no errors exporting with workers enabled. For comparison, this is my exported game with the latest nw.js. BLACK SCREEN + CREATEOBJURL ERROR. So happy to finally ditch nw.js lol. My game actually feels a lot smoother too.
Nice! Thanks for the report! I definitely interested in the new webview2 + webview2 c++ addons path, exploring it myself also.
Also looking at the thread on the issue in nw.js, not obvious that it has been resolved yet, mixed reports: https://github.com/nwjs/nw.js/issues/8075
Still broken, but I see Ashley responded. Would still be cool to have this fix to have different export options, and nw.js still is the only one with transparent steam overlay.
any way to make sides like this to look like flat shading? kinda like this but nicer lol.this would be a cool addition to ssao, i put sampling at .1 and moving camera left to right looks pretty cool.
Try fake global illumination example?
EDIT: This is probably the best way for the flat colors effect your trying to get, just adjust light angles at certain angles.
yea iknow but that light doesnt change on ur camera view like ssao. seeing stuffs flat shaded where ssao would normally be would be cool
Nope! Don't think ssao will ever work like that lol.
kind of, but the big issue is that ground plane angle is typically such that it gets heavy ao applied too, so the ground becomes dark, which I imagine you don't want. Will look a bit more over time, but definitely don't count on it. Of course an alternative is to use the flat lighting ACEs on 3DObjects directly.
yea dont really need this, just thought would be a cool effect for ssao
any way to do this like cristo example without giving animation to building?
https://streamable.com/fififa
Try setting the original texture in the model to nearest and use a low resolution texture and have the project also run nearest. In addition, you may try adding some slight jitter to the camera view.
i think i found a cool look thanks.
What about performance update? Do you have any progress?
I am focusing on other features and bug fixes now. Do you have a specific game / project issue that the community could help review in terms of perf?
To upload to c3 arcade, try adding an additional. ".txt" to the glb/gltf filename in the project and change path to match. Good luck with your game, send a link when you can.
You may also need to use gltf format instead of glb.
https://www.construct.net/en/free-online-games/power-rpg-c3-3d-online-24422/play...
nice! i like the turn base battle transitions when you enter battle.
is it possible to use this addon to make a regular 3D shape rotate on the z axis?
No, it does not interact with 3D Shape. You can make models of the same geometry as 3D shape and load yhem into 3D Object and do the rotation as needed.
Note 3D Shape already rotates on Z, but not X/Y.
the vertex rounding is so cool! since the ps1 graphics is popular right now. would this effect only work with models with animation? does non animated stuff like walls or buildings work? will test after i build my pc
You might want to do some other things too, like lock the 3DCamera to rounded x,y,z coordinates, similar for object locations, similar for rotation angles and camera angles, try it out!
Just saw and tested this, I love this look! I can't get it to work on trees or walls without animations though. Is this possible like in this video? At 3:50. Or something that makes textures look crooked. Tried rounding stuff, nothing really worked out.
o,o. Gives horror game vibes. How is the cpu usage? Any fps hit?
You have to turn it off when the object isn't near your camera view. You wont notice this from a distance anyway. Without turning it off though, around 15 highish poly animated models(8k+tri) onscreen at once, the cpu is 10%-15% increase and fps drop is up to 15-20. I don't know if its the same with non animated stuff, I can't get it to work to test. Haven't tested with low poly models either. Should be pretty good performance unless your making a game with 50+ enemies on screen at once, which would probably still be okay with lower poly's and good optimization techniques.
Perhaps lower resolution? Nearest textures in model?
I'll just use blender and move uv around for crooked textures. I gave the buildings a tiny animation that move sideways, now to just stop it when camera isn't moving much. Pretty sure this isn't the best way to do this but it still works lol. Will definitely use this to create ps1 style game after my main game.
Right, the textures in PS1 are not perspective correct, perhaps you can play with 3D Camera FOV (dynamically?) and also changing between orthogonal and perspective for the 3DCamera
intersting to looking a 3d mesh point from your project uploaded, but i still did not know how to set point on a node? i try to download the model and import it on blender i thought its from origin but its not, any advice?
Just add a vertex in blender where you want.
@cristo1 's got the idea for the most specific placement, in the test case it just uses one of the vertex points from the node, based on vertex index.
thank guys for the answer appreciate
Oddly specific request, can you somehow make it do that 'wobbly' thing that PS1 graphics do? Or is that just not possible?
Can you show an example? This kind of sounds like an effect or using lower resolution with nearest and no filtering.
https://github.com/dsoft20/psx_retroshader
Ah, I see. We can't change the vertex shader, but we could play with vertex values on the CPU. So would take some CPU perf to do it, I'll take a look. Adding to the list for later.
Check out the dev logs - does the new vertex rounding ACE do what you want?