We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.

c4cc

Forum Replies Created

Viewing 15 posts - 31 through 45 (of 427 total)
  • Author
    Posts
  • in reply to: Project Optimization #77662
    c4cc
    Participant

    So your background wall…needs to “look” 3D and no reason it can’t with proper textures. Your walls need to have an emission glow layer…no problem…still a material will solve this. Far less expensive and far more performant than a mesh…but this of course is your call.

    This isn’t just about “looking” 3D, it’s about parts of stages viewed from various 3d angles. (Imagine Bamboo Pandemonium stage Rockman x8). Meaning if I just used a flat plane with textures, it’d look weird (flat-ish) to view the stage from a different angle.

    Obviously I don’t know the design criteria for you game but there are a lot of modeling details that could be optimized. Now..with that said…your performance gains will be minimal in this area at this moment but could depending on you overall game design become significant. So its always best to start off with optimal assets you can clone or replicate. Panel0 is currently 407 triangles…this panel could easily be reduced to 240 by deleting inside faces, and using a texture. With some careful planning you can get this down to 66 triangles but you will need to create code to manage some cloning of parts. But get the rest of your game built then come back and plan on optimizing these assets.

    Really, Panel0 is 407 triangles? I checked the statistics under viewport overlays at the sneak peak row, and it mentioned 472 triangles. Also, why do I need to create code for cloning, when the cloning is available via puzzles? Why does having several materials ruin performance?

    Textures will allow areas, lights, panels, etc to glow independently. So no need to assign multiple materials…just need a good UV map for color and one for emission. Depending on the colors you use..you could also color pack four maps into one.

    How does baking textures really reduce triangle count? Or at least improve performance?
    I’m worried that baking textures is time consuming. Also, do I have to bake textures for animated meshes (with armature) too?

    As far as how to remove faces…in Panel 0, you have 4 objects that face the outside each of these sub objects are close to the front face of the larger object…all of the rear faces can be deleted as they are never seen.

    Done. Here’s a way to delete inside faces:

    Scrolling games are typically 2D…even when created in 3D because of the efficiency and performance. If you are wanting to create an perspective view scrolling game then a 3D floor might make since otherwise the camera angle is defined and a texture would be better and a lot easier to manage and far more performant. Your render out the camera angle of your floor to an image and then place that image on a plane in front of the camera and you will not be able to tell the difference. The benefit is only 2 triangles. You can still have the floor glow green like you are doing but you just simplified it.

    I’ll try this. Sounds good

    Regarding web based games. Since you are going to target different devices and resolutions..you may want to consider loading in different assets for different devices.
    If its a small phone screen and bandwidth is bad….load in a different scene than if you are on a desktop with a great GPU. The layouts and screens are going to be so different. Are you going to take into consideration landscape and portrait or are you going to lock one out?
    Serving mobile games on a web server means extremely efficient code and optimization far more important than doing a mobile app via cordova. Now of course the most important question is how big is your game and will it load on a mobile device? I don’t know how big your game will be.

    I’ll have to dig deeper into cordova and puzzles more.

    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    in reply to: Project Optimization #77620
    c4cc
    Participant

    Thanks for your suggestions here, I’ll assess them one at a time.

    Performance ( after the loading )
    The back wall should really be a textures with a normal map and perhaps the cylinders on that wall stay 3D objects. Unless you are doing something with them that requires all that geo.

    I need to get a 3d camera view during gameplay someday, so I need my walls to be 3d objects. Also, I may want one of the wall’s emission material to occasionally glow someday, so baking materials into textures is out of the question.

    the floor elements – unless moving should also be one object and unnessary faces and geo removed from adjacent elements.

    How do you remove unnecessary faces and geometry from elements?
    My project is basically a 2d sidescrolling game. Unfortunately it means I need to have different objects to make up a stage, especially for floors.

    Puzzles….
    you have two key down events and three key up events….I would recommend re-writing these so you just have on key down and one key up event.

    you have two Every Frame events…. i would recommend rewriting so you only have one.
    I would also consider that there are potentially ways to eliminate many of the the things you have in Every Frame events. The more you can reduce the logic in these events the better.

    You have many after X seconds….events. With this sort of logic you could have conditions where events will be missed, our cued and cause lag and or prevent other items from triggering while a wait state completes, especially when the timer is triggering animation.
    As an example a kick or repeated pressing of 5 on the keypad…many events are going to be missed or queued and because the animations is already playing and the time event and animation are on going… the animations will either be truncated and restarted or skipped and this causes performance issues. To solve this sort of thing you would need to create some logic for what should happen if the 5 key has been pressed and the animation is playing on in a wait state…..you could tell the play head to go back to start frame on interrupt…or ignore additional input….but something. But because you have these nested timers, a different approach may be more useful.

    You are also using physics….this will slow things down too from a performance stand point.
    I am not sure how you are using it or what its purpose is but I am guessing that if the character hits an object it should do something (play some animation sequence). If the objects are predictive, meaning they move or are static, I would use a different method of collision detection to avoid using physics if possible.

    I’ll look into this puzzles issue for sure, thanks

    Performance is going to be measured by the target system requirements. Are you wanting this to playback on a mobile device via web server, going to output in Electron, Cordova?

    Pardon my stupid question, but what do you mean “playback on a mobile device via web server”? Do you mean my project NOT published as an app like apps on Google Playstore, but independently published on the web?

    I’m currently planning to make this project a webgame on a website accessible to mobile devices as well as desktops/laptops.

    Ngl, this is my first time hearing Electron, cordova. This is helpful, thanks.

    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    in reply to: Project Optimization #77604
    c4cc
    Participant

    Please understand, the reason I distorted the mesh and material (the vertice count is still the same) is in this blend file because it’s confidential (I don’t prefer giving spoilers), and I will naturally release the original version when I release my app, which should hopefully be by the end of this month, or a week after.

    But the puzzles are the same, vertice count, and shader methods are the same though

    My project files as attached

    https://drive.google.com/file/d/1JwReRbvBJ1d8SFhgfT7MSEfuEr4WguUc/view

    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    • This reply was modified 1 month, 3 weeks ago by c4cc.
    in reply to: Project Optimization #77598
    c4cc
    Participant

    My code. How do I know if it’s causing performance issues, especially if it’s for user end?:

    • This reply was modified 1 month, 3 weeks ago by c4cc.
    in reply to: Project Optimization #77597
    c4cc
    Participant

    bad puzzle logic, mis handled timers, on frame events, etc

    So why does poorly managed puzzles/code ruin user performance, if not because of excessive functions (involuntarily) executed?

    in reply to: Project Optimization #77579
    c4cc
    Participant

    Are there any good tips for making puzzles to try to keep the loading time down? After messing around I noticed the puzzles seem to have a heavy impact on performance.

    I know this question is old, but I also suspect puzzles may affect user performance, especially loading time and fps. When I saved my blend file as into a new project’s blend gile, fps was actually between 90-120. Then when I saved my xml to the new project’s, suddenly the fps dropped till 20fps.

    Any way to have a lot of puzzles without it affecting the user performance? Why weren’t we told that puzzles can affect user performance too?

    in reply to: server technical spec #77520
    c4cc
    Participant

    Sorry for replying to such an old post, but speaking of server specification, and by extension web hosting, what web hosting do you guys recommend? Especially for bandwidth, storage, low prices E.g., ultahost, ionos, or even hostinger?

    c4cc
    Participant

    This works. Cloning is only done once, right, unless specified otherwise? Thanks again, I could use this code in the future for sure. :good:

    • This reply was modified 1 month, 4 weeks ago by c4cc.
    c4cc
    Participant

    Hi there,
    As a note, the EveryFrame puzzle…doesn’t and should not be in the keydown or keyup events. This logic should be in your startup sequence as it will execute then continue to execute every frame. The testing of whether a clone should be created should still be in the key up or down events.

    Just my two cents…good luck

    I’ll keep this in mind, thanks

    https://drive.google.com/…/view?usp=sharing

    :good:

    This is helpful, thanks for this. Sorry for the late reply, I was busy af last night. Now, my only 2 questions atm is, 1) how do I get the cloned wall to only appear in front of my character a few numbers away, and 2), if the wall clones more than once, any way to set the number of cloning?

    I believe the “5” in remainder of determines the location of object, while “Remainder < 5.1” and “Remainder > 4.9” determines area to clone wall.

    My variation of your answer:
    [/url]

    Once again, thanks for your helpful answer. :good:

    c4cc
    Participant

    Xeon’s puzzles

    greenshot

    Yours that I edited

    [/url]

    credit to kdv for suggesting me these puzzles for moving player last time

    c4cc
    Participant

    On second thought, it seems that even though your solution works well, with everyframe it seems unresponsive

    greenshot

    It’s unresponsive with these:
    [/url]

    credit to kdv for suggesting me these puzzles for moving player last time

    and

    • This reply was modified 2 months ago by c4cc.
    • This reply was modified 2 months ago by c4cc.
    c4cc
    Participant

    Here is a simplified example:
    https://v3d.net/139a.

    It contains the V3D project/puzzles and the blend file.

    You do not need an every frame call to move an object or character…but your situation may have other things involved that I am not aware of.

    Hopefully this helps.

    Thanks for this, ATM looks like it works. Just had to alter this:

    • This reply was modified 2 months ago by c4cc.
    c4cc
    Participant

    .
    In a procedure…test where your cube is and create the clone if conditions are met.

    I’m trying to create a player that will trigger a background object, so i need the the “every frame” call to move my player

    So how do I do this using the get position/rotation puzzle? This puzzle’s the only one that locates position of object

    c4cc
    Participant

    Maybe…..as I would need to see more of you settings to validate what I am going to suggest…..

    my settings in Blender 4.2, besides by transparency nodes I showed you earlier
    image share[/url]

    c4cc
    Participant

    I want my transparency effects in blender to appear in verge3d, exactly as they do in blender.
    No, I don’t want the green outline colors to disappear when they are inside object.

    My shader nodes, and desired transparency shader for verge3d are in below screenshots.

    also, my procedural nodes

    • This reply was modified 2 months ago by c4cc.
Viewing 15 posts - 31 through 45 (of 427 total)