Announcement

Collapse
No announcement yet.

Maker3D - create your 3D RPG

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Something like this would be great in a humble indie bundle.

    Comment


    • #12
      Qaridarium: maker crashes with some intel gpus aniway since intels last driver update

      since that on some systems my maker crashes on some random configs, and my app is forced to the lowest possible level of mipmapping from intel drivers, and aniso is turned off also. result: now runs with 4 fps in hq mode. very cool and interesting result, compared to an nvidia or ati laptop on the same price can push more than 30 fps in hq with proper aa and af

      Comment


      • #13
        Looking at your screenshots and the video, I don't see that your graphics are all that advanced compared to mainstream games, and those manage significantly better FPS despite being more visually complex. I'd lean towards any crashes or slowdowns being the fault of your graphics code, not the hardware or drivers. Especially if you're having trouble just hitting a basic 30 FPS on mid-range NVIDIA/AMD hardware.

        Random guesses as to waht would be the problem are, based on my experience with student/hobby projects of similar complexity:

        1) Not batching draw calls appropriately. This will _slaughter_ your frame rate on modern GPUs. If you have more than around 1000-2000 draw calls, you're going to get horrible FPS even on the most advanced awesome expensive powerful GPU ever. For simpler games, you should be able to stay well under the 1000 mark with even just the simplistic of batching techniques.

        2) Inefficient fragment shaders and post processing. You mention some blur effects, for instance, and poorly implemented blur can really chow through the GPU's memory bandwidth. Same goes for "blur-like" effects such as the PCF you might be using on your shadows, HDR lighting, etc. Minimize the number of blurs you do and try to stick to a low-fidelity two-pass algorithm (it's a blur after all, there's no reason to use "accurate" methods). Likewise, avoid post-processing as much as possible, and limit yourself to just a couple if you really need them. Just one SSAO pass can completely obliterate your post-processing budget if done even slightly inefficiently, and other common post-processing techniques can be nearly as bad. One of the Intel GPU's bigger weaknesses is that it's using system RAM instead of dedicated GDDR5 memory, so it will be more sensitive to bandwidth issues, but again even the top of the line NVIDIA cards can be easily bandwidth starved by texture-lookup-intensive fragment shaders.

        3) Shadows and lighting. Keeping shadow maps up to date can be expensive. Limit the number of lights that can cast shadows to those that will have a big impact. I noticed the shadows in your video are very strong/striking even in a well lit room, which implies you're always casting shadows even in cases when it makes little sense to do so. I can't tell, but you're also possibly casting shadows from lights that have no influence on the scene, which is a huge waste. Likewise, for lighting surfaces, keep your light count way down or -- if you're interested in having lots and lots of lights for particle effects and such -- make sure you're using a deferred shading approach (there's a lot of variations of that; which is best for your game is something you'll need to research). Too many lights or overly simplistic and inefficient forward lighting will also cause more GPU memory bandwidth issues, as will updating shadow maps more often than is necessary.

        Quite frankly, though, nothing I've seen from your posts here should have any trouble pulling 30 FPS on a recent Intel GPU and should be able to blast through well over 60 FPS on even a cheaper modern AMD or NVIDIA card. You're doing something inefficiently that's causing your performance problems.

        Comment


        • #14
          ,,basic 30 FPS''
          30 fps is far enough for rpg games. this is not first person shooters. even some squaresoft games runs at 15 fps on they target hardwares. this is very popular among rpg-s. if intel gpus cant reach this, thats not my fault.
          (however, there is some rare fps bugs on some systems/driver combination that affects nvidia cards, that is a mutch bigger problem than fps problem on intel).

          ,,Not batching draw''
          well, i used very lot of opengl calls in the previous (3-4 version before) versions, its optimised a bit in the laters. on intel devices, however, the small vram bandwidth is the problem (intel gpus have no vram at all).

          ,,poorly implemented blur can really chow through the GPU's memory bandwidth''
          well, actually the shadowing is what causes this, as you mention it later.

          ,,Quite frankly, though, nothing I've seen from your posts here should have any trouble pulling 30 FPS on a recent Intel GPU and should be able to blast through well over 60 FPS on even a cheaper modern AMD or NVIDIA card. You're doing something inefficiently that's causing your performance problems. ''
          yes, on modern amd cards its above 60, and as i sayd, on a same price amd or nvidia laptop, it runs on 30 fps. i dont care about intel. but if they would pay me ugly amout of money, i would fix it

          ,,I don't see that your graphics are all that advanced compared to mainstream games''
          mainstream games for pc is mostly 2d flash games and simply 3d games like minecraft. my graphics is mutch more advenced than them.
          AAA industry for pc is dead for years now, and its not mainstream aniway.
          An AAA graphics engine is written by 7-10 coders for 2-3 years, i cant reproduce that quality, so if you need that kind of graphics detail, maker3d is not meant for you. maker3d is meant for rpg lovers and hobbysts, for example, peoples who writing novels or they are rpg story tellers, to create they imagination as a 3d game with modern graphics, and not for hardcore AAA gamers or AAA professionals. There is full different engines with different ideologies, to satisfy those demands. This is a jrpg maker, this satisfy different demands, and it should work like this. Tank you for sour suggestion that try to figure out the reason of the low fps on intel boards. Ofc i would be happy, if it would also run on intel gpus (it will happen once), but i dont see any chance that this will happen in the near future.
          Last edited by Geri; 06 January 2012, 08:45 AM.

          Comment


          • #15
            Originally posted by Geri View Post
            ,,basic 30 FPS''
            30 fps is far enough for rpg games.
            Sure. My point was simply that reaching 30 FPS for should be _easy_ for such games. Many RPGs suffer from an extensive overuse of inefficient techniques. Things like Bethesda's games and their facial animation technologies, for instance, despite the rest of the game's graphics being pretty run of the mill.

            (however, there is some rare fps bugs on some systems/driver combination that affects nvidia cards, that is a mutch bigger problem than fps problem on intel).
            Common with OpenGL. If you can, for Windows users at least, just include a D3D version. I have a list of OpenGL bugs in NVIDIA's drivers for which there are no work arounds and which NVIDIA has not fixed in over 2 years, which affects every OpenGL-using application on the system (including their own examples).

            ,,poorly implemented blur can really chow through the GPU's memory bandwidth''
            well, actually the shadowing is what causes this, as you mention it later.
            Yeah, that'll do it.

            ,,I don't see that your graphics are all that advanced compared to mainstream games''
            mainstream games for pc is mostly 2d flash games and simply 3d games like minecraft. my graphics is mutch more advenced than them.
            AAA industry for pc is dead for years now, and its not mainstream aniway.
            Steam and the actual PC games sales figures disprove that. When people quote facts about PC gaming dying, they look at figures like how the console share of the game market is growing and the PC share of the game market is shrinking. What they consistently ignore is that the actual number of PC games sales is still _increasing_. The market is far from dead in any way, shape, or form.

            An AAA graphics engine is written by 7-10 coders for 2-3 years, i cant reproduce that quality, so if you need that kind of graphics detail, maker3d is not meant for you.
            Never implied it was. Just saying that the graphics you do have should not be having significant performance problems, and it's probably something within your power to fix; it just requires identifying the problem and selecting a proper solution.

            It's usually just a few small things that are wrong. I work with a _lot_ of student programmers doing games, and I've seen a lot about what can cause performance problems, and I've also seen just how beautiful and gorgeous a game can be while still running on horrifically crappy little Intel-based netbooks, despite only having a tiny little student team working in a semester or two.

            If you're sure shadows are the primary culprit (does turning them off raise the performance on Intel GPUs to acceptable levels? does it raise the performance on the non-Intel GPUs?), there's probably some ideas we can generate on getting shadowing that's Good Enough for your game while having significantly better performance.

            Comment


            • #16
              reaching 30 FPS for should be _easy_ for such games. Many RPGs suffer from an extensive overuse of inefficient techniques
              yeah actually, its some kind of pandemic disease around us

              include a D3D version
              its included, but through an opengl to d3d wrapper -> so its mutch more slower and buggy.
              Swtiching from opengl to other thing is not possible, this is a crossplatform software. And newer versions of d3d does not even available to XP, and 9 are old and legacy.

              Steam and the actual PC games sales figures disprove that. When people quote facts about PC gaming dying
              Steam is not AAA-only. I didnt sayd that pc game industry is dieing. Its not. But the pc game AAA level industry does. Its market share decrases in every year, it was on the top around the year 2000, now its basically almost below the detectable statistical margin, when compared to the other segments of the game industry.

              identifying the problem and selecting a proper solution
              The long answer about maker's performance:
              yeah, some problems (like those that causing serious performance drop on some nvidia cards) can be probably fixed by just fixing a bit somewhere in a function. but as maker3d is created by me, there is some structural problems, those will probably never fixed.
              the reason is complicated. the multimedia base engine, that hosts the makers engine (lets call it base engine) is a huge fugly monolithic semi-modular crap that i continously develop since 2006. The size of thats source code is above 1,4 mbyte. So 1,4 mbyte (without comments) pure C code. This thing is basically the ,,server'' architecture, that hosts every work of me (not only maker), and covers the platform, the 3d, the hardware. This is some kind of a simply game engine. The maker3d itself is wrapped and compiled together over this server architecture. The maker also is around an 600 kbytes of source code. So its very huge. But its small, if i compare it to some modern game engines like doom3. The conception of my multimedia engine is like a new hand of me, a hand with that i can reach my goals easyer. It provides a good, masked, layered interface for me, to create softwares in it - like maker3d.
              This is why its slow: its totally a 2+ mbyte source code written in pure C, and even if i would optimise this mess for a month (sometimes i do it) i just can gain a ~10% performance incrase. Becouse the limitating thing is the engine itself. But it canot be bypassed, becouse without this, i would unable to writte things like maker. So the performance is sacraficed in the name of existence. And no, it would impossible to throw out my multimedia engine, and use some different bsd or publicdomain engine as core, becouse i would still need to create interfaces i previously mentioned that is actually goals to satisly my mentality and coding style. This would cause that totally its performance would be mutch worst than the current. The only thing that would help this situation if i would write a new multimedia engine (not just graphics engine) from scratch, with the knowledge of the modern gpu and cpu architectures. But that would be still not really faster than this, and it would need 5+ years to do it. However, i am not interested to do so. It runs playable. It does not matter if it runs 30 or 90 fps. So, as i mentioned, the performance is sacraficed in the name of existence. The other casual developers, who creates ,,bigger'' stuff, like this maker, also do the same. Its still good, becouse its playable. And can be switched to low quality, so intel gpus also can run it. So the performance is not a problem, the code can do what it should.

              Comment


              • #17
                part 2 (i was just off to eat )

                your first though, rpg-s are slower. yeah. rpg-s are slower than other games, imho becouse of these reasons:

                *there is 20-70 levels in a -for example- FPS. Those levels and maps can easilly optimised, even by hand.
                But there is 100-4000 map in an rpg game. those cant optimised by hands, only by very ineffective algorythms - to avoid that something disappear what should not. In a fps, the coders/mappers can use very effective and modern optimisation, and if something disappears, in a position, they just solving by creating a local script that keeps the object visible in the questionanle position. In rpg, this canot do, becouse there is so big amount of maps and variations that the map creators just map together. For this reason, an rpg renders mutch more content, if you would add the same map for the both thing.

                *an rpg is mostly puzzled together from blocks, just like as in my maker. in an rpg, you can have various settings on your hero, there is so mutch places - mentioned before - there is so mutch logic beyond the engine - ai, battle system, item system, magic system, the quests itself, the ability that everything interacts with everything, the scripts that handle the logic beyond the whole game and beyond the current map, wich is mutch more complex than the logic beyond an fps.
                keeping this together, managing it in the memory, while understanding that everything can be just simply loaded to the map avoids the optimisations wich can do in the graphics engine, basically forcing everything to be managed as dynamic content. running this whole thing, executing the code to maintain this and interpreting the code beyond this, the maps, and the logic itself, and managing the whole thing together causes so mutch cpu overhead that an rpg, or an rpg game engine, compared to an fps, will be ineffective in every possible cases. Just like an electric concrete mixer, the pot will rotate slowly.

                Comment


                • #18
                  Hi, nice work

                  I do agree Intel sucks, but ehi:

                  niko@laptop ~ $ openarena +exec anholt 2>&1 | egrep -e '[0-9]+ frames'
                  840 frames 12.0 seconds 69.7 fps 4.0/14.3/99.0/5.1 ms

                  Openarena @1280x800 and VERY HIGH quality settings

                  niko@laptop ~ $ cat /proc/cpuinfo | grep "model name" | head -1
                  model name : Intel(R) Core(TM)2 Duo CPU U9400 @ 1.40GHz

                  niko@laptop ~ $ glxinfo | grep "OpenGL renderer"
                  OpenGL renderer string: Mesa DRI Mobile Intel? GM45 Express Chipset


                  GM45 is a 2008 (4 years old) laptop's vga and the cpu doesn't help because it's an 1,4GHz Ultra Low Voltage chip.


                  Are you sure the problem are the Intel chips?
                  Last edited by darkbasic; 09 January 2012, 10:30 AM.
                  ## VGA ##
                  AMD: X1950XTX, HD3870, HD5870
                  Intel: GMA45, HD3000 (Core i5 2500K)

                  Comment


                  • #19
                    @Geri

                    Is there a good example RPG for your engine? I have got no time to create a new game.

                    Comment


                    • #20
                      Kano:
                      the maker has a built in game to show the handling of the engine. (you can load and run startloc.bas)
                      i dont know about other games made with maker, becouse i dont folow my costumers. judging from the emails at my support address, there is 3-4 wich is actively developed, and may alreday reached demo stage (maker is not so old)

                      darkbasic:
                      thanks
                      btw, openarena only uses the half of the vertexes than maker, and it does not even have shadows and postprocess.
                      you can disable the shadowing and postprocess in maker, then it will run around 60 fps also.
                      also, maker's graphics engine has proper multimesh control, q3 endine do not even have that.
                      that engine would literally shit into his own pants from this content that maker needs to process...

                      so yes, the problem is with intel gpus. dont troll
                      (no, i will not disable these effects in default just becouse intel makes slow hardware)
                      Last edited by Geri; 09 January 2012, 11:40 AM.

                      Comment

                      Working...
                      X