Is this do-able in D3D8?

Started by
7 comments, last by Ratman 22 years, 5 months ago
If I made a 2D engine using D3D8, would I be able to "zoom" in and out, almost like it was 3D? All it would be is the images getting bigger and smaller. Im pretty sure that can be done, but Im wondering if it will look good? I''d like my game to be playable at high resolutions and low resolutions, I also would like to offer high-res art for playing at the higher res, I''d also rather not have multiple sets of game-art. If I could just move the camera back, wouldnt DirectX handle pretty much everything else (well except the interace, mouse, etc)? Thanks for any input ratman --------------- Ratfest.org
Advertisement
Yeah, I am pretty sure it would be possible to do that, and the best way would probably be to use 3D quads (2 triagles) for each tile. Besides, when you use 3D for a 2Dish game you can have all sorts of neat effects like alpha blending and rotations would be way easier.
You don''t even have a choice, you have to do it that way! DX8 has no 2D support.
Yes, all that is possible, but I think you''re thinking about this wrong.

Let''s say you had a beautiful high res picture that looked great at 1280x1024. You could run that at 640 and allow DX to scale it, etc. However, the people that would need to run at 640 are probably the ones that don''t have alot of texture memory, so you''d be making them load that big beautiful picture and push it back and forth across the bus for a low res final output. Seems like a very bad way to address lower res hardware because memory issues are the bottleneck these days.

What you ask is very doable technically, but depending on what exactly you''re doing, you may need to think about what exactly would be going on under the hood...
Author, "Real Time Rendering Tricks and Techniques in DirectX", "Focus on Curves and Surfaces", A third book on advanced lighting and materials
You can zoom it simple by just moving the camera.
Beware the words of the Crazed Genius!!! You would be better off scaling the image Once (1) at loading, then storing a 640x480 image in video memory instead of using a massive whopper and rescaling it Every Frame!!! Think speed, speed, speed!!!

(it has come to my attention that there weren''t enough !''s in this post, so here we go: !!!!!!!!!!!)
That said, it would look really cool to zoom in and out for special moments ( like in/out/in/out/in/out really quickly for a special powerup, or zoom in on a door when the player walks through ). Kind of like those rotoscoping demos that make people sick

You could do all sorts of nifty things, like draw your game to a third buffer (which I like to call the "triple" "buffer" ) and then blit that to the screen _on an angle_ so that it looks like the game world is flying away, like the scoreboards when you watch the cricket on TV =)

Anyway, I''m getting carried away. What the point of this post was is that you shouldn''t _not_ use zooming, because to deny yourself that would be a little silly, but to use it appropriately.
To Freshya - I agree completely, but if you are going to rescale at runtime, you''d probably be better off scaling at design time because Photoshop, etc. can probably do a better job of scaling than D3D. For instance, you may want to redraw text elements with a smaller font rather than rescaling text down to a jaggy size.

To clarify - everything in the original question is doable, but you have to consider what''s going on. For certain types of art, scaling at runtime may be perfect, for others, you may be better off shipping many resolutions. There are really two points here:

1. should I do zoom and other cool effects - Absolutely
2. should I use D3D to scale for different resolutions - Maybe, depending on your needs.

Although, I picked this name in hopes that someday someone would say something like "Beware the words of the Crazed Genius". For that I thank you.
Author, "Real Time Rendering Tricks and Techniques in DirectX", "Focus on Curves and Surfaces", A third book on advanced lighting and materials
COOL

you can use this effect in a fighting game when the players are far from each other , zoom out , and when they are near zoom in like commercial games !!
http://uae-arts.host.sk

This topic is closed to new replies.

Advertisement