dcsimg
A Flash Developer Resource Site

Page 1 of 3 123 LastLast
Results 1 to 20 of 57

Thread: RumbleSushi 3D game demos

  1. #1
    Senior Member
    Join Date
    Jan 2010
    Posts
    126

    RumbleSushi 3D game demos

    Hello,

    I've known about Flashkit for years, but only recently did I even realise it had a forum

    Anyway, I thought this would be a good place to post some demos built with my proprietary 3D engine, RumbleSushi3D.

    The engine has been built from the ground up, purely for making games. So as you can imagine, I've worked hardcore on performance.

    The engine is almost finished, I just need to import 3D model animation, implement some fast 3D collision detection, then it's on to actually making games. I'll start a blog when games start production, giving info about upcoming games, and possibly some playable demos etc too.

    Feedback is welcome, I'd be especially interested in what framerates you're getting on what CPUs.

    Here is my latest demo. 150 buildings, 500 moving flowers, mip mapping, frustum clipping, perspective correction - running at 60fps on a Core 2 Duo PC.

    http://rumblesushi.com/city.html

    I'll be happy to post some earlier demos too, if requested.

    Cheers,
    RumbleSushi

  2. #2
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    I forgot to add - you use the mouse to look/turn, and move with the arrow keys or WASD. If you want to enable vertical look, press V.

    Cheers.

  3. #3
    Senior Member tonypa's Avatar
    Join Date
    Jul 2001
    Location
    Estonia
    Posts
    8,227
    Runs fine, about 30 fps on my nVidia Ion PC.

  4. #4
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    30fps or above is good, but it's strange some of the framerates people are reporting.

    I've tested this demo on an ancient AMD Sempron, 1.6 ghz, with 512 megs of RAM, and it runs at a near constant 60fps, with the occasional dip to 50 something.

    The CPU in your netbook is almost as fast as a 1.6 ghz AMD Sempron, I would have thought you'd get around 50fps at least. Unless you're using Chrome.

  5. #5
    Senior Member Pazil's Avatar
    Join Date
    Sep 2006
    Location
    Ontario, Canada
    Posts
    913
    Man!!! When I'm used to getting about 5-15 fps in 3d demo's, you're engine actually ran 24-30 fps, though 28 most of the time! It looked really smooth. I give you a mega thumbs up in performance (would you mind giving some background details on the techniques you used? There are some people on this forum that are devoted to 3d in Flash!)!

    Looks really really good! I hope I can use it someday...I never have time to finish my engine...

    P.
    WIP-ZOMBIES

    I love vegetarians! More meat for the rest of us!

  6. #6
    Senior Member fil_razorback's Avatar
    Join Date
    Jul 2005
    Location
    Paris, France
    Posts
    607
    I oscillated between 60 and 61 fps the whole time, great job !
    Can you tell us more about it ? Developing it must have been interesting :P

  7. #7
    Please, Call Me Bob trogdor458's Avatar
    Join Date
    Aug 2006
    Location
    Pensacola, FL
    Posts
    915
    Well, runs fine at 60 fps over here, with a pretty standard computer I think
    Only thing I noticed off was some weird fluctuations in the image, most particularly around the edges of the screen

    Eh?
    Otherwise, good looking city me thinks

  8. #8
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    Excellent, glad you like it.

    Pazil - what CPU do you have?

    Developing it is very fun indeed, especially seeing as I've done it alone, it's been quite challenging.

    As I mentioned in the first post, what I'm working on now is proper 3D per polygon collision detection. Which doesn't seem particularly easy, especially getting it run without having a noticeable effect on performance. The collision detection in the demo above is just a quick and dirty 2D collision, seeing as the player's Y coordinate doesn't change, and the objects to collide with are just rectangles.

    The techniques I've used aren't particularly revolutionary. Just some clever code, a very streamlined overall pipeline - very quick per model transformations, a quick polygon pipeline, and a decent amount of deferred rendering/deferred calculations. I've tried to keep things as simple as possible. The engine is not bloated or overcomplicated in the slightest. I've kept classes to a minimum, and always taken the quickest route from A to B.

    And because it's geared 100% towards game development (I don't plan on making websites, unless I get a particularly good offer) - my focus has been on speed, speed, speed from the get go. I've benchmarked all areas of the engine. There's been a somewhat obsessive amount of benchmarking, which has been necessary to get it running as fast as it does.

    One of the reasons I've focused on quick model handling, is it goes without saying that you're not going to have a particularly realistic high poly 3D model in Flash - with no GPU, your polygon budget is obscenely low.

    So even with just 1 model using 100% of the polygon budget, the result is still going to be a low polygon model, by console standards

    So I think it's more impressive to say have a large amount of really simple enemies or objects, rather than just a handful of slightly less simple enemies/objects

    But enemies aside, the faster the per model handling, the more background objects I can have, as long as there is some clever level design, not allowing too much to be in view at any 1 time.

    I'll post some earlier demos tomorrow, demonstrating some very quick flock code, and a slick tracking cam I developed.

    One of the demos has 1000 simple flat shaded, moving spaceships (just 6 polygons each) running at 30fps on a Core 2 Duo.

    The demo I posted above was actually something new for my engine, creating a larger scene, with larger objects etc, and new features like mip mapping, perspective correction etc.

    Anyway, I'll post the other demos tomorrow

    And the demo I'm working on now is just a practice run for 3D per polygon collision, it's some basic snowy terrain, with trees etc.

    Cheers,
    RumbleSushi

  9. #9
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    Trogdor - that's a side effect of dynamic triangulation, which is used to correct the texture warping of affine texture mapping. You get broken textures and texture swimming.

    To be honest, for most busy/messy textures, dynamic triangulation is fine, but with those really clean grid textures on the sides of the buildings, it really shows the flaws of the technique.

    This demo should be more to your tastes, the Flash 10 version. Completely different rendering technique, it uses more juice, but is pixel perfect.

    http://rumblesushi.com/city_F10.html

  10. #10
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    If anyone wants to know more about how dynamic triangulation and the Flash 10 technique work, let me know, I wrote a post about them earlier.
    Last edited by rumblesushi; 01-19-2010 at 10:42 PM.

  11. #11
    Senior Member tonypa's Avatar
    Join Date
    Jul 2001
    Location
    Estonia
    Posts
    8,227
    Quote Originally Posted by rumblesushi View Post
    30fps or above is good, but it's strange some of the framerates people are reporting.

    I've tested this demo on an ancient AMD Sempron, 1.6 ghz, with 512 megs of RAM, and it runs at a near constant 60fps, with the occasional dip to 50 something.

    The CPU in your netbook is almost as fast as a 1.6 ghz AMD Sempron, I would have thought you'd get around 50fps at least. Unless you're using Chrome.
    I tested on Opera and IE, Win7. fps remains around 30 so it could be something about that Intel Atom CPU.

  12. #12
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    Thanks for the info tonypa. Not unlike PC games, windows/flash as a platform can be annoying in that user's systems are unpredictable, and it's hard to know what level of performance to target/expect. Either way, I guess 30fps from a proper 3D scene like this running on a netbook, can't complain.

    Anyway - here is my first demo that experimented with moving objects, this is from November. 100 textured flowers in an undulating line flock.

    Press C to change the camera to a rollercoaster cam. Press C again to change it back. By default the camera is a sort of tracking cam/hover cam, much like a replay camera in a racing game.

    Here it is - http://rumblesushi.com/flock_01.html

  13. #13
    M.D. mr_malee's Avatar
    Join Date
    Dec 2002
    Location
    Shelter
    Posts
    4,140
    gotta say, this is looking very nice. And thank you for thinking about a 3d engine for game development, low poly, lots of models.
    lather yourself up with soap - soap arcade

  14. #14
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    This demo has models galore. It's a flock of uber simple spaceships, just 6 polygons each. But they flock and there 360 of them, running at 60fps on a Core Duo or above.

    Press D to see some debug stats, and press M to load in another 640 ships, bringing the total to 1000. The framerate switches to 30fps with this mode.

    http://rumblesushi.com/flock_02.html

    Cheers,
    RumbleSushi.

  15. #15
    Senior Member Pazil's Avatar
    Join Date
    Sep 2006
    Location
    Ontario, Canada
    Posts
    913
    I really really want you to know that I love your engine!

    Seriously, it's the only one giving MY computer "good" performance! With 360 models, I was running it at 18 fps, when others will crawl with that. When I went to 1000, then I could really see a hit to performance, but still...if it was a game, it was moderately playable still.

    I have a AMD Athlon @ 1.15 Ghz, and 768 Mb of RAM.

    It seems that you took the path I was starting to take, doing manual bitmapData drawing stuff, rather than the slow slow built-in vector drawing...In fact, I'm still working on a z-buffer concerning that...an on-and-off project.

    I'm really interested to see more demo's and hopefully finally some source!

    P.
    WIP-ZOMBIES

    I love vegetarians! More meat for the rest of us!

  16. #16
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    I get around 60 fps and it runs smoothly but the key controls don´t work for me on safari with latest flash player. Actually the latest flash player is quite buggy for me for various things, maybe its that.
    I like the demo itself (i could also run around with older player on my pc), its cool, sadly i have to say for flash.
    I wonder:
    -Why have you chosen to create your own engine instead of using away3d or one of the others?
    -Why have you chosen to do realtime 3d in flash instead of using unity3d?
    I don´t want this to turn into the same old unity vs flash discussion, i´d just like to get your view on it, i wonder that since it seems you want this to have game focus and games usually push the technical edge of flash´s 3d "capabilities" most, wouldn´t it make most sense for 3d games to be done in other tech?
    I still sorta get it when advertising clients in some cases insist on using flash or a flash developer wants to stick with what he already knows and picks and uses one of the readymade engines and lives with the restrictions, but when i see a 3d engine developer like you i wonder especially what´s the motivation to do it in flash =)
    Is it mostly that you want to bend the boundaries of what´s doable in flash or do you see other benefits in using flash for this type of stuff other than the high plugin penetration?
    It makes me think more these days when i see something like this while on the other hand even the core team that started papervision3d initially has switched over to using unity3d mostly.

  17. #17
    Senior Member Ray Beez's Avatar
    Join Date
    Jun 2000
    Posts
    2,796
    60 fps

    3.2 ghz quadcore, Windows 7, ie8 and Firefox 3.5 (same frame rate in both)

    ATI HD 5700 series card

  18. #18
    Hype over content... Squize's Avatar
    Join Date
    Apr 2001
    Location
    Lost forever in a happy crowd...
    Posts
    5,928
    Really impressive work mate, runs silky smooth for me on my mac book pro, the FP10 version of the original demo is excellent.

    It's been a while since any 3D in Flash has been interesting, and this has really hit the spot.

    Squize.

  19. #19
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    Thanks Pazil

    I'm actually using the graphics class to draw the polygons, bitmapFill.

    Good to see you get a somewhat acceptable framerate on such an old machine too.

    Tom - the reason for choosing to develop my own engine rather than using Away 3D or Papervision is quite simple. Partly for the challenge, but mainly because they are too slow to make proper 3D games. With any fairly complex scene with a lot of models, there's no way you're going to get 60fps out of Away3D or PV3D.

    Obviously they are far more feature rich than my engine, but most of the features are more geared towards website stuff rather than games.

    My engine has been built for speed, rather than usability or versatility, and the features are far more game focused - I'm focusing on LODing, mip mapping, enemy movement, collision detection etc.

    Also, what better way of getting a thorough understanding of 3D mechanics than building your own engine? Building my engine and knowing how it works inside out, automatically puts me at a big advantage when developing 3D work, as I know exactly how everything is working, and can easily modify/customise things as I see fit.

    The difference in speed alone is worth it, the other Flash 3D engines aren't fast enough to render a proper 3D scene with a lot of objects, movement, collision detection etc at an acceptable framerate.

    As for your second question - penetration. From a business standpoint, 3D games in Flash make more sense, and there is a gap in the market for them. Despite technology like Unity being out there, people are going to be excited about playing an N64 or DS level game in Flash.

    And I guess what it boils down to is 99% of users have Flash 9, and even Flash 10 is up to around 90% now.

    Do you know the stats for Unity?

    And I guess, being that these are browser based games we're talking about, I'm going to create some fast, fun, arcade style games. With a big pick up and play appeal, and score attack appeal etc.

    I'm not aiming to make games that compete with console games. And in regards to the huge horsepower difference between my 3D engine and Unity (as Unity uses the GPU obviously, the difference in poly pushing power is enormous) - the DS Vs the PSP perfectly illustrates that horsepower only counts for so much.

    The DS is more accessible, has a lot of fun games, makes the most of it's low polygon budget, and has very playable games at high framerates (most DS games run at 60fps, even Mario Kart DS).

    So for the kind of fast, stylistic arcade style games I'll be making, I don't even really need the polygon budget of Unity.

    With such a small Polygon budget too, it'll force me to be far more creative in regards to art style etc, coming up with interesting designs and textures that suit such a low polygon environment.

    Don't get me wrong though, I find Unity 3D hugely impressive. Although I've known about it for ages, I only had a proper look recently, and I was blown away. I had a look at the Tropical Paradise demo.

    I was expecting Shockwave level 3D visuals (which are impressive in their own right, as it is also hardware accelerated) - but the Unity visuals were more approaching PS2 level graphics. Very impressive.

    Apart from the low penetration, one of the things that puts me off is, am I right in thinking it uses a scripting language, with no use of classes etc? I heard someone mention it.

    Regardless, I shall give Unity a go once this project is properly up and running

    Cheers,
    RumbleSushi
    Last edited by rumblesushi; 01-21-2010 at 03:33 PM.

  20. #20
    Senior Member
    Join Date
    Jan 2010
    Posts
    126
    A couple more demos. Here's an example of imported models.

    http://rumblesushi.com/cars.html

    Press the Space bar to swap the 2 cars with 20 really basic cars.

    And here is an underwater scene I created, because I love fish - http://rumblesushi.com/sea.html

    4 seperate shoals of fish, with their own characteristics.

    Press M to load a Yann Tierson track to listen to while watching the fish

    Cheers,
    RumbleSushi

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center