I said 2D OpenGL graphics baby

Started by
14 comments, last by Multiple Migs 22 years, 11 months ago
I am trying to display 2D images onto the screen (like a map with vehicles moving around on it). I would like to be able to scale these images and rotate them aswell. At the same time I would like to minimize distortion in these images. The images I am trying to display are simply a bunch of lines, polyline, polygones, etc... that are suppose to make up a wire frame display of maps and vehicles. 1. I am wondering which method of drawing/displaying these images is better (is faster an allows for scalling with the least distortion of the original image). Loading the image into a texture then binding it to a quad or drawing the images using Primatives? (The Textures would be loaded in the program as a Bitmap, and each Primatives points would be loaded into memory and then redrawn) 2. If I load the Primatives of one image into memory in my program from a file (as explained above). And I want to use this image as a background (Map). How do I display it on the screen without having to redraw the primitives everytime I want to update the map? Urg, sorry for being all over the place but I'm useless at explaining stuff only using text. Anyway, any help you can give me on my chaotic questions is much appreciated. Question at bottom of post aswell. Migs Edited by - Multiple Migs on April 26, 2001 5:36:25 PM
ZZZZZZZZZZZ... sleep is good
Advertisement
It seems to me that either your use of language is flawed or you haven''t quite got your head around the basic ideas yet. (No offence intended)

Textures go onto primitives; therefore you have to have primitives to use textures. If the 2D display is gonna be a ''map'' over which vehicles will move, why would it need to be up to 40,000 vertices?

Stephen
No offense intended, but it doesn''t make sence.
Either you''re spelling is wrong or you don''t know what the words you use excatly means...

Maybe you should try to talk about what you try to do at a higher level, like : how to do a 2D scrolling game with OpenGL.

-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
Grrrr!!!

I know that it might not seem to make any sence but it is hard to explain.

The images I am displaying are made up of lines, polylines, polygones, etc... I just happens that they contain anywhere from 300 to around 40,000 primatives (40,000 is extreme and probably will be reduced). Accuracy is important because I am trying to simulate real world coordinates on the maps.

Currently, I have a file that contains data on how to draw images with primatives (lines, arcs, polylines, etc..). The only reason i''m using this method is because I am under the impression that loading the same types of images (in Bitmap format) into a texture would not allow me to scale the image with the same accuracy as when I draw it with primatives. Capeech.

I know you need to put textures onto primatives, but what I want to know is.

1. Is there a significant difference in accuracy of the displayed image when. One it is in texture format attached to a quad, or two when the lines, polylines, etc... of the image are drawn individually?

I somewhat new to Graphics programming (OpenGL and DirectX) but I have been in programming for sometime now so I am quite sure that my understanding of the terms are correct.
ZZZZZZZZZZZ... sleep is good
There are ways to get both methods to display accurate images. If you''re just texturing a quad (I''m assuming this will be something like a billboard), then you''d have to probably use different images for the texture when you change the size of the object. If your using a 3D model (polyline, polygons or whatever) all you do is adjust the points a little and you have a larger model. Both have advantages and disadvantages... It''s up to you which you would prefer. In terms of speed, I would say using a texture on a quad is faster (fewer polygons to draw). Ok enough BSing for me, time to go back to sleep.
>>1. Is there a significant difference in accuracy of the displayed image when. One it is in texture format attached to a quad, or two when the lines, polylines, etc... of the image are drawn individually?<<

there shouldnt be *that* much, there will be some mind cause the lines are working from the original object theyre bound to be more acurate, also with lines you can do line antialiasing.
of note though using lines is gonna be far slower esp if youre drawing 40000 LINES just for one model, how much slower prolly in the region of seconds per frame (with antialiasing)


http://members.xoom.com/myBollux
Thank you all for you feedback!

I was also wondering if it is possible to Draw primatives onto a Bitmap, and then save the Bitmap as a texture? If the answer is yes, a nudge in the right direction would be greatly appreciated.

I want to do this so that I only have to redraw the primatives when I scale the image.

Thanks for yo time!

Mig
ZZZZZZZZZZZ... sleep is good
Any 3D package that can render can turn primitives into bitmaps. You can even write your own program to render primitives into bitmaps and save them as files. You can even skip the 3D packages and just draw the bitmaps in some 2D software.
Whenever you''re displaying something on the screen it''s basically an image that you''ve put together. It shouldn''t be that much more work to just save that as a file.
Thanks for the reply!

Dumb question coming up. But that just means it should be easy to answer. heh heh heh.

Is there are min/max/optimum size for textures? Can they only be glued to a certain size primative?

Thanks for all the help.

Mig
ZZZZZZZZZZZ... sleep is good
quote:Original post by Multiple Migs

Is there are min/max/optimum size for textures?

The minimum size is 2 by 2 (I think, it could be 1 by 1) pixels. The maximum size is determined by your video card. For example: Most Voodoo''s can only handle 256 by 256 and down, while all nVidia cards newer than the TNT can handle up to 4096 by 4096.

quote:Original post by Multiple Migs

Can they only be glued to a certain size primative?

Nope. But if you don''t want the texture to be filtered, then the primitive it is used on should be the same size as the texture (that''s a basic description, but you get the idea).

Resist Windows XP''s Invasive Production Activation Technology!
http://druidgames.cjb.net/

This topic is closed to new replies.

Advertisement