Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Schitzn

RollerCoaster Tycoon 2 Blitting

This topic is 5484 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Im new to the general games programming area, mainly an apps programmer. However, one day Id really love to tinker with my own isometric engine. Im a gamer who sometimes loves a game so much that I revolt to design it myself, tinkering with the original and try and learn the trade secrets behind rendering/logic(and what I believe a true love in programming is). Alas, Chris Sawyer''s RCT/Transport Tycoon Deluxe isometric POV is what I really adore. I''d assume both engines are rendered with a more DirectDraw charm. Another iso game, Simcity 4 seems to be built on Direct3D only, allowing more dynamics on the Z axis. Buildings are no longer 2D sprites but rather 3D Meshes with textures. One of the drawbacks of SC4''s method is its performance-loss which is due to polygon counts in rendering. Is what I''ve said here correct??? Where Im going with this is, is it better to create an Height changing Isometric map engine in DirectDraw, rather than Direct3D, or is it possible to render the floor tiles Direct3D and blit DirectDraw ontop of the tiles. I''ve looked at the basic architecture of a Direct3D app, it seems to me that a lot of the mathematics in rendering a scene aren''t their, which Im afraid might have the drawbacks of preventing a developer from recoding it to his/hers needs. Im not real knowledgable of Direct 3D, but I''ve always doubted it because Im a general pessimist. Oh, and heres another thing that interests me. Rollercoaster Tycoon seems to have an incredibly high count of 2D frames for animations of coasters, rides, people. What''s the technique used here to blit them so fast to screen. Is a video backbuffer store all of these frames (bah, I want a good explanation how if this is true!), or does it rip it from the resource file as required or is there another secret in this trade Im not aware of! Thanks for taking the time to answer my questions.

Share this post


Link to post
Share on other sites
Advertisement
Yes, you can use a 3D mesh and then use DirectDraw (or whatever API you''re using) to blit buildings, people, etc.

The reason RCT is so fast is because, and get this, it''s written entirely in Assembly! Chris said (forgot where) that he only used C to set up some Windows stuff.

Share this post


Link to post
Share on other sites
RollerCoaster Tycoon and Transport Tycoon Deluxe were, yes, written nearly completely in x86 ASM. A nice feat.

Storing all those graphics off-screen, while doing everything else, especially since (I''m pretty sure) Transport Tycoon was restricted to 640kb, no memory manager... I''m thinking run-time-inflatable graphics compression. Use some quick-decompressing algorithm like Run-Length Encoding or Huffman Encoding on a per-row basis of the bitmaps, and draw them to-screen as needed.

D3D does whatever you tell it to do. And it is chock full of mathematics. DirectX is a great and complete API, and is (from experience) just as easy/difficult to learn as OpenGL or Glide.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!