Advertisement

Tips-o-the-windows...you know the rest

Started by August 18, 2000 09:19 AM
3 comments, last by Sponge99 24 years, 4 months ago
I was reading "Tips.." and was wondering two things:
  1. Do I have to know all that Windoze GDI stuff?
  2. It says I have to do a QueryInterface to get the current interface of the DirectDraw version stuff.....yet when I don''t do that, it works out OK (just using lpDD->XXX)
Thanx! (yeah yeah, berate me for being stupid) Dare wa neko o koroshiteimasuka?
"Now watch as I run away in a womanly fashion." - Batman
1) No, you don''t have to know all the windows GDI stuff, but it really helps when you want to test something out (like when you haven''t got DInput working yet, but you want to make sure all your DDraw code works... or same for sound... or text drawing) (in fact, drawing text to the screen using GDI calls is really great for run-time debugging if you a)don''t have all the kinks worked out in DDraw yet and b)you''re running full-screen)

2) Yeah, it''s possible to use the previous version of the DDraw interface stuff... but if you use DD1 instead of DD4, a lot of the code in the rest of the DDraw section won''t work right (like any reference to DDESC2 or some of the function calls (even the Lock() call has a different parameter list than the DD1 version)), also there were some improvements (within the functions) as far as efficiency, flexibility, or support with the DD4 version of the interface. So, even though it''s possible to use the initial version of the interface, I wouldn''t recommend it... it''s safer (and no more difficult) to use the DD4 version.

And I won''t berate you... It''s better to ask questions about this than to just plod along assuming things (even though I think Andre mentions both of these reasons somewhere in the book...)

"Man is the only animal that laughs and weeps; for he is the only animal that is struck with the difference between what things are and what they ought to be."
        --William Hazlitt
Greenspun's Tenth Rule of Programming: "Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified bug-ridden slow implementation of half of Common Lisp."
Advertisement
*sort of off topic *

Actually, if you''re using DX7 then you can simply use DirectDrawCreateEx without having to query for anything. Of course, then you have to use all the version 7 interfaces . (the 4 is for version 6).

Probably best to stick with 4 for now, though, since there isn''t anything new for DirectDraw in DirectX 7.

----------------------------------------
Who is this General Failure and why is he trying to read my hard disk?
Yeah! Thanks for the speedy response. That took about 3 minutes from me posting. I love the WWW.

Anyways: Alright...I''ll plod throught the WinGDI crap section of the book, ugh. Microsoft could''ve made this alot easier, y''know. A petition, maybe?

And: Oooh, thanks for the help on the QueryInterface stuff. If I had written all of the code in there and not known that, and then come back, analyze, etc, and then it didn''t work, I''dda been torked!!

Thanx.

Dare wa neko o koroshiteimasuka?
"Now watch as I run away in a womanly fashion." - Batman
While I was replying, The Senshi replyed...

Mr.Senshi: Hm....so no QueryInterface crap? Alrighty then. Yeah, I''m using DX7, and I couldn''t care less that there aren''t any addons to it from DX6 or 5 or whatever. I just wanted to get DDraw working suitably. And now I can go and use my normal ol'' lpDD->XXX. Oh, and change DirectDrawCreate to DirectDrawCreateEx(); I didn''t know about that...

Thanks!

Dare wa neko o koroshiteimasuka?
"Now watch as I run away in a womanly fashion." - Batman

This topic is closed to new replies.

Advertisement