Rojo3d. 3D engine for Construct 2

3 favourites
From the Asset Store
Casino? money? who knows? but the target is the same!
  • > > > Also, I'm not sure if your game is like minecraft and it needs all those boxes to be separate objects. Because if you have some static elements, then it is much better to create them using verts inside the plugin and to keep track of them just use tilemap with variables Z.

    > > I saw some videos of 'recreating Minecraft' on YouTube and they talked about it... But to be honest I cannot imagine the solution on how to do it. Also, I think if I do this way the project my not be able to support lights? I mean every block have it's on info (light RGB, pos, behaviors) and I wouldn't be able to use the 'prebuilt' animations (rotation, scale and moving)

    >

    > If you are using sprites to control blocks, then it probably wouldn't be a problem.

    >

    > > I think I was getting about 1000 collisions checks per second lol. I think it was the physics behavior and all those objects is set to immovable, so I think they might be always colliding or something 😂

    >

    > Yeah, you want to deactivate the behaviour where it is not needed. ROOJ chipmunks physics is much better in that regards too. But the system I showed you, unless you are rotating around Depth axis and not using sprites, but code, will work better than physics. It has less to calculate.

    >

    > >

    > > Again I am away from my PC, but I remember only these:

    > > Specs:

    > > - it's a 11 years old PC

    > > - 4 gb ram

    > > - Intel i3 (3.50 GHz, 1 socket)

    > > - About 20gb left in memory of 140gb.

    > > - Windows 10

    > > - bonus: The CPU usage (at project debug) is around 40-79.

    >

    > That's an old machine. you should at least upgrade cpu to i7 that uses same socket. You will get much better performance then i3 and they are cheap now. What gpu?

    >

    > I would like to try your project, out of curiosity, see if there's anything I can suggest to get you a better performance. I'm using Construct since 2007, so I kind of know a lot about it.

    My bad, I looked again here and I actually the game is doing 300.000 to 410.000 collisions per seconds (WHAAAAT??? LOL) 😂😂😂😂

    Exactly. With your own bespoke system you can shrink that number to even double digits only and get pretty much 60 fps. You only need to activate collisions of close objects and everything that isn't moving you disable that completely. There is several ways of activating nearby objects. You either figure it out yourself or ask chatgpt.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I tried doing what you said and now I am getting at maximum 20.000 collisions checks, I thinks this might be better :D

    Unfortunately, after a few new implementations I still got some issues with lagging. I will wait until the 'optimizing day' arrives again :)

    + I am trying to add a skybox. Everything went well, but is there a way to remove this white dots? It's a 'perfect' cube mesh, I don't thought I would get them, there is anyway to fix? (I will try using a sphere mesh later on and If I didn't work I will come back)

    And just a Chit-chat, What is a light that emits black light called?

  • I tried doing what you said and now I am getting at maximum 20.000 collisions checks, I thinks this might be better :D

    Unfortunately, after a few new implementations I still got some issues with lagging. I will wait until the 'optimizing day' arrives again :)

    + I am trying to add a skybox. Everything went well, but is there a way to remove this white dots? It's a 'perfect' cube mesh, I don't thought I would get them, there is anyway to fix? (I will try using a sphere mesh later on and If I didn't work I will come back)

    And just a Chit-chat, What is a light that emits black light called?

    In project settings turn off pixel rounding and set sampling mode from point to linear. You might probably see more white. If that's the case, you need to extend the texture space and add single pixel around the texture, or crop in in to the texture.

    But this also happens when two tris are occupying same xy. The plugin has some problems with z sorting i think. With skybox best idea is to add another roj 3d plugin, add cube or sphere, or cylinder, place new camera in that cube and only rotate it.

    Also, you are getting a lag because of your old cpu. I used to work on i5 2500 back in the day, with 560ti and c2 was lagging, thought it got much improved since then. but cpu is probably the bottleneck along with sampling and pixel rounding.

    Black light? Well, i guess it is called black light.

  • I tried doing what you said and now I am getting at maximum 20.000 collisions checks, I thinks this might be better :D

    Unfortunately, after a few new implementations I still got some issues with lagging. I will wait until the 'optimizing day' arrives again :)

    + I am trying to add a skybox. Everything went well, but is there a way to remove this white dots? It's a 'perfect' cube mesh, I don't thought I would get them, there is anyway to fix? (I will try using a sphere mesh later on and If I didn't work I will come back)

    And just a Chit-chat, What is a light that emits black light called?

    How is it going?

  • How is it going?

    I decided to have some days off the project, it was really stressing me a bit. I might get back into working on it soon...

    And you? Did you figure out how to use Paster correctly?

  • > How is it going?

    I decided to have some days off the project, it was really stressing me a bit. I might get back into working on it soon...

    And you? Did you figure out how to use Paster correctly?

    What was stressing you out about it?

    I know about many of the 3d plugin's and c2's quirks, so write if you get stuck, I might help you with finding ways around them.

    Yes I did. I also made events to convert image points from tiles inside sprite atlas, that I create quads and tris with, and also have added data to their names and pointers, in to arrays that hold the meshes, so I can tell those points represent quad or tri, so later I can go trough whole mesharray in one single loop. So also finishing events that deal with that, and that parse pointers in animation names, so that if I have several different tiles but they are using same mesh, I only store the mesh once, and point to it for other tiles. I guess I could have made things slightly simpler, but on the other hand, I can create a lot of unique meshes quickly with this system, inside the plugin itself, so I can implement per vertex lightening to the scene ( otherwise vert colour apply to all verts in the object ), and I can have super high performance since I'm only using single map object.

    And started implementing proper pre calculated lightening system, so already have normalised vectors and some of that stuff.

    But I'm also warned out, so once this part is done I'll take a break. But it's almost there. And once it is done, and I'll come back to it, the actual game dev begins and sky is the limit.

  • Hold on a minute, it's atually possible to add ambient shadows? Is that what 'vertex color' stands for?

    BRUUUUHhhhhh.... I might get all the work back again :((((

    I really want that

  • I am not feeling good.... :/// (I am just a bit upset about not knowing that before)

    Now I have to study like a month to understand how does this work! I just picked up the example you gave me but I can't even imagine how It works....

    I mean, To make it work for every mesh I will have to learn how mesh loading works and know how illumination must work FOR EVERY vertex... (I am crying internally in many different ways....)

    But anyway, thank you. I will try to see if this is easier rather than sync a 2D object with a 3D object.

  • I am not feeling good.... :/// (I am just a bit upset about not knowing that before)

    Now I have to study like a month to understand how does this work! I just picked up the example you gave me but I can't even imagine how It works....

    I mean, To make it work for every mesh I will have to learn how mesh loading works and know how illumination must work FOR EVERY vertex... (I am crying internally in many different ways....)

    But anyway, thank you. I will try to see if this is easier rather than sync a 2D object with a 3D object.

    It's not hard, believe me. It is actually simple. Only thing about verts is that in this plugin they are not accessible after their creation, so you won't be able to have dynamic shading and lights, meaning you got to calculate it on creation.

    As for creating polys with verts, it is very easy, really. And you can help yourself by creating one bigger texture and point uv to a section of it. Ie. texture has 16x16 equal size tiles, so then with uv's you can use int's as texture corodinates and divide them by number of tiles in the texture, U = textureIDx/16, V = textureIDy/16 for left top corner of the texture and for bottom right you do U = (textureIDx+1)/16 , V = (textureIDy+1)/16, and so on.

    Ask ChatGPT, it knows construct2 and algebra, so it can produce psudo events for you. I always start prompt with "Construct2, events system, create a program:"

  • R0J0hound Hey, i think that the shadow issue in first person is due to camera frustrum making objects behind the camera disappear. Unfortunately it is impossible to set camera near to anything lower than 0.01. Do you think you could this one little tweak? Thx

  • R0J0hound Hey, i think that the shadow issue in first person is due to camera frustrum making objects behind the camera disappear. Unfortunately it is impossible to set camera near to anything lower than 0.01. Do you think you could this one little tweak? Thx

    Whats the shadow issue?

  • The light actually has its own frustum and it may very well be off. Ideally it contains the whole scene.

    But I’ll be honest here it’s unlikely that I’ll be doing any more changes to this plug-in any time soon.

  • The light actually has its own frustum and it may very well be off. Ideally it contains the whole scene.

    But I’ll be honest here it’s unlikely that I’ll be doing any more changes to this plug-in any time soon.

    IK R0J0, you've been saying this for a long time now. If I could do js I'd fix those things myself. It's just so close for this plugin to cover 100% of my need. Shadow issue fix and vertex as mesh export/import would make it 100%. I hoped that once you save verts as mesh, and then save state of the plugin, it will also save the models, but it doesn't work this way.

    I've managed to figure out method to have 4mln polygons or even more in the level, running at max refresh rate ( 75fps on my screen, in the debugger!!! ) - really giving a lot of thought on my side to maximise its potential. ( I shall be showing what I've done in the near future thought right now got to focus on another project ). But I wanted to use a layout to generate mesh, then just load it when needed on another layout to trim down layout starting time.

  • > R0J0hound Hey, i think that the shadow issue in first person is due to camera frustrum making objects behind the camera disappear. Unfortunately it is impossible to set camera near to anything lower than 0.01. Do you think you could this one little tweak? Thx

    Whats the shadow issue?

    Two issue actually: 1. it flickers 2. It shrinks/expands/disappears depending on the viewing angle/ Now I know it is Z axis related. for shadows created at Z close to camera Z it doesn't happen. There's also a possibility that because of two sided mesh it generates two different shadows being casted from two opposing angles.

  • > > R0J0hound Hey, i think that the shadow issue in first person is due to camera frustrum making objects behind the camera disappear. Unfortunately it is impossible to set camera near to anything lower than 0.01. Do you think you could this one little tweak? Thx

    >

    > Whats the shadow issue?

    Two issue actually: 1. it flickers 2. It shrinks/expands/disappears depending on the viewing angle/ Now I know it is Z axis related. for shadows created at Z close to camera Z it doesn't happen. There's also a possibility that because of two sided mesh it generates two different shadows being casted from two opposing angles.

    About the flickering:

    I saw that... I didn't test, but I think that if you use rounded rotations it will be 'flikerless', what shadows map configs are you using? I think (3096; Infinty; 0.05) it's pretty good. Also, If you make your game 'higher', I mean, making your player have 300 pixels high instead of 32, for example, it might not even be noticeable.

    About the second issue:

    What??

    But... have you tried moving the light a bit and it's angle, or making the shadows bias higher a little bit?

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