Jump to content

  • Log In with Google      Sign In   
  • Create Account


- - - - -

01.03 - Comments and Suggestions

  • You cannot reply to this topic
73 replies to this topic

#41 Ible   Members   -  Reputation: 122

Like
Likes
Like

Posted 20 June 2001 - 10:38 PM

Hi, first off, great job Teej! The tutorials have really gotten things rolling for me. I am now trying to make a tetris clone but I am trying to make a GUI for it that is reusable and I am having some trouble getting started. I was hoping that you might do a article on game GUIs at some point.



"Fall seven times, stand up eight."
-Japanese Proverb

Sponsor:

#42 Teej   GDNet+   -  Reputation: 176

Like
Likes
Like

Posted 26 June 2001 - 06:23 AM

Hi,

It''s fairly obvious that everyone wants to get into 3D, as that''s where today''s games are, but I''d like to emphasise that since the heart of game development is the design, implementation and development of algorithms, it really doesn''t matter how the game looks. The fundamentals of game development consist of the skills one needs in order to write any type of game, regardless of genre or technology. We all need to learn how to make games by taking challenges and conquering them, and that''s the type of skill I''m trying to teach -- when you look past the 3D graphics, it''s just a game, the same as any 2D game.

Here''s how I see it... we need to get our ''feet wet'' by creating smaller, simpler games in the tradition of the arcade classics, and slowly (and strategically) incorporate larger, more robust games that highlight various aspects of game development. This journey will ultimately end with you having the ability to envision, design and create any game imaginable, as you will have ''collected'' all of skills fashioned from such a comprehensive journey. Getting to 3D is an eventuality, but you''ll have to realize that 3D is just a graphical interface -- nothing more. It lies lower on my list of priorities than, let''s say, proper data handling techniques and speed vs. functionality trade-offs.

So, in a nutshell, yes we''ll be getting to 3D. Not because 3D is the ultimate goal though -- just because it''s an asset to certain types of games.

Teej



#43 Weatherman   Members   -  Reputation: 122

Like
Likes
Like

Posted 02 July 2001 - 03:41 AM

Hello, Teej;

Considering the skill level that most of the participants in this forum seem to possess, your approach to game development is bang on. The only change that I might be inclined to make would be to use object oriented programming principles a little more. But, at this level, it probably doesn''t matter all that much.

I do have two suggestions -- one for the people who are following this tutorial series and one for you. (I apologize in advance if you find these suggestions a little harsh, but they have been bugging me for months.)

1. For the people following the tutorials: Although Teej says that there is no such thing as a stupid question, I have to disagree. When the same question has been answered twenty times, it is pretty obvious that the questioner is just too lazy to go back and review previous installments. I don''t think that it is asking too much for people to review the material that Teej has written BEFORE posting questions. This could save an awful lot of space in some of Teej''s later tutorials which presume that you have mastered what came before (see, for example, 04.09 - Game States and Variable Scope). Also, you should supplement Teej''s material with the articles from GameDev.net and perhaps from one or two books (e.g, Andre LaMothe).

2. For Teej: You are doing a fantastic job - I love your style and enjoy everything that you''ve written, whether it is new to me or whether I am already familiar with the material. BUT, could you please stop promising to post new material. Promising more that you can deliver is a real turn-off and it detracts from the wonderful job that you are doing. It would be better if you simply said that you will post new material when (and if) you have the time to do it.

Keep up the good work!

PS: one minor point -- could you please use a spell check on your articles before posting

#44 asylum101   Members   -  Reputation: 122

Like
Likes
Like

Posted 02 July 2001 - 12:22 PM

hey teej
i just wanted to say thanks for the great site im really learning alot and am well on my way to making my first game
i wanted to let you know that the link to your site under the animation anticipation string is dead i guess your adress changed anyways thanks for everything =D

#45 Teej   GDNet+   -  Reputation: 176

Like
Likes
Like

Posted 05 July 2001 - 06:02 AM

Weatherman: Thanks for the comments. I totally agree with you -- it''s a little psychological game I play with myself (and tend to lose), figuring that if I promise a due date, I force myself to meet it. In the future, I''m going to do exactly as you''ve mentioned. Maybe with the self-inflicted stress removed, I''ll (ironically) get more accompished!

Teej



#46 asylum101   Members   -  Reputation: 122

Like
Likes
Like

Posted 11 July 2001 - 10:44 PM

hey teej i wanted to say again your doing a great job this is by far one of the best tutorials ive ever seen! !=o)

i have knoticed also that there are multiple posts in almost every string of this forum informing you of problems with your web site. so i was thinking maybe it would be wise to make a dedicated string for reporting problems so that way it would clear the articals up for posts relivent to the topic and make the forum a little more organized.

but after all its up the postee to make sure his/her post is in the right place.

and just to reiterate, good job man!

#47 Anonymous Poster_Anonymous Poster_*   Guests   -  Reputation:

Likes

Posted 24 July 2001 - 08:06 AM

Hey Teej can you give us a tutorial on how to make MENUS for our games in MSVC++? I have a couple books that talk about it but none of the ways they show me seem to work and the "helpful, simplified" wizard they provide to make resources in MSVC++ ISN''T so helpful and simplified.

That and I''d like to see us make games in a resizeable window on the desktop.

#48 Piotyr   Members   -  Reputation: 122

Like
Likes
Like

Posted 24 July 2001 - 05:53 PM

Menus the VC++ way tend to make large use of MFC, which is bad form for game programming, due to MFC having way too much overhead to have decently-sized games be playable. MFC stuff is much more valuable in the game programming world for things such as tools and editors, which perhaps the forum will get to eventually.

As for windowed applications, that involves making a few necessary tweaks to the way DirectDraw is set up, and the way the window is set up, which maybe Teej will also get to in a future article. Windowed games are nicer for debugging (especially with VC++...when you can actually USE its debugging features).

Speaking of debugging, before most people get too entrenched in coding larger games (Blocks ''n Lines should be fine without good debugging practices), but might I suggest an article on debugging, that perhaps takes into account windowed DirectDraw, or keeping variables written to the screen, so that people may not get as frustrated when trying to get something working? I can''t count the number of times good debug code has helped find the errors I''ve made in practice.

#49 Weatherman   Members   -  Reputation: 122

Like
Likes
Like

Posted 25 July 2001 - 02:46 AM

quote:

Menus the VC++ way tend to make large use of MFC, which is bad form for game programming, due to MFC having way too much overhead to have decently-sized games be playable. MFC stuff is much more valuable in the game programming world for things such as tools and editors, which perhaps the forum will get to eventually.


You don''t need to use MFC to create menus for your games. Also, when the player uses a menu, he/she probably doesn''t need blinding speed at that particular moment.

By the way, MFC isn''t quite as slow as some people have tried to make out -- unless you have a very old computer (e.g. a 80486). You could even program "Blocks and Lines" without DirectDraw and still get very good response times with most computers.

You are right that MFC comes into its own for programming tools and editors.

#50 Shadow Dragon-X   Members   -  Reputation: 122

Like
Likes
Like

Posted 26 July 2001 - 11:43 AM

Can anyone walk me thru how to make a MENU RESOURCE in VC++? Just a quik menu with FILE and EXIT under file to exit the program[&FILE->E&xit]. I understand about the ID''s and how WndProc interpret''s them.

Or point me in the right direction to find info on it. Help is confusing.

Any help greatly appreciated.

#51 Teej   GDNet+   -  Reputation: 176

Like
Likes
Like

Posted 31 July 2001 - 05:31 AM

Dragon Shadow-X: WARNING: you won''t be able to use Win32 menus for full-screen DirectX games...

  1. Go to File|New and create a new resource script

  2. Right-click on the name of the script that appears in the main window, and select Insert Menu

  3. Double-click on the menu location you wish to edit. Popups open new menus, and therefore don''t have IDs. Name the popup File and you''ll see a new entry below it appear

  4. Double-click the new entry (below File) and enter an ID and caption (i.e. New...)

  5. Save your script file, and make sure that you include RESOURCE.H in your other project files (that use resources)


Depending on whether or not you use MFC, you''ll either process menu commands via your Window Procedure (Win32) or through a message map (MFC). Details on command messages for both can be found in the online help.

Is that what you were looking for?

Teej



#52 Anonymous Programmer   Members   -  Reputation: 122

Like
Likes
Like

Posted 03 August 2001 - 04:18 PM

Great Job!






#53 Taharez   Members   -  Reputation: 184

Like
Likes
Like

Posted 04 August 2001 - 03:44 AM

Heard about your trouble with hosting, I would suggest trying freedom2surf, I''ve been using their free hosting for about a year, and their servers have always worked fine for me. Plus, you don''t get any annoying banners or popups on your site. Good luck.

------------------
It''s me again!

#54 Shadow Dragon-X   Members   -  Reputation: 122

Like
Likes
Like

Posted 05 August 2001 - 09:28 AM

Thanks a lot Teej! Now I just need to know how to attach that menu to my window. [the ways the 2 books I have on it don''t work and I can''t seem to find it in the online help for VC++]

Direct X 7 in 24hrs:
window.lpszMenuNam = MAKEINTRESOURCE(IDR_MENU1);
I do this and no errors but I get a window with no menu.

Game Programming for Dummies[teaches DX 5 though]:
they say make menu in a text file and attach it like this:

CreateWindow(......,LoadMenu(hInstance, "MYMENU"),....);

Which I don''t understand either and doesn''t work even when I copy everything they did exactly!

Also a question about ID''s. When I tried to make "E&xit" they had several name id''s already there, IDCLOSE, got my attention. But then windows didn''t recognize it until I #defined it and gave it a number. If I want to make my own ID like ID_EXIT or something do I #define it in the resource header myself and then fill the name "ID_EXIT" in under "ID:" when I''m making a menu under the graphical interface?

P>S>Yeah I knew I wouldn''t be able to make a menu for a full screen dx application. I''m experimenting with windowed programs. Will you ever be covering those? I''d like to make a game that can run full screen or in a window on the desktop.

#55 TheTramp   Members   -  Reputation: 122

Like
Likes
Like

Posted 05 August 2001 - 10:16 PM

When I do menus they seem to work, what I do is name them as a string, with qoutes around the resource name and specify that in wc.lpszMenuName, but MAKEINTRESOURCE should work if you havent used quotes.
I think the answer to your problem is also the answer to your second problem, visual c++ does make defines for all the integer values (menu name, and all the commands) and it plonks them in a header file for you. Just add #include "resource.h" at the top, and it should work fine.


#56 Shadow Dragon-X   Members   -  Reputation: 122

Like
Likes
Like

Posted 11 August 2001 - 11:32 AM

Well since no one[not the guy who posted after me or Teej] is responding to my e-mails I''ll post here:

Can anyone explain to me what he means by "what I do is name them as a string, with qoutes around the resource name and specify that in wc.lpszMenuName, but MAKEINTRESOURCE should work if you havent used quotes." How does one name their menu as a string/or use MAKEINTRESOURCE?

I''m a COMPLETE newbie when it comes to menus. Can ANYONE give me an example of how they name their menu and how to attach it to the window? I''m soooo close to making a windowed app but none of the resources I have is any help with menu''s!!

Any help will be SERIOUSLY appreciated!

Shadow Dragon-X


#57 TheTramp   Members   -  Reputation: 122

Like
Likes
Like

Posted 12 August 2001 - 06:24 AM

Sorry I didn''t reply sooner, I was away on holiday. I just read the sentance that I posted and it just confuses me too.

What you do to make a menu:
1) design it

2) in the resource view on the left name the resource "Menu" or something like that with the qoutes, or MENU.

3) add to the top of the file: #include "rosource.h" - this has all the constants for the menu name / selections etc.

4) when you are setting up your window class add:
wc.szMenuName = "Menu"
or
wc.szMenuName = MAKEINTRESOURCE(MENU)
depemnding on how you named it in step 2

5) in the message handler (WndProc) when you are interpreting the message (in the switch(msg) section) add:

case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_FILE_NEW: // the ID for the menu item
// add your code for this menu item here
break;
case default:
break;
}

I realise that I may have gone on a bit, but I thought that I might as well be complete to help other people in the forum

#58 TheTramp   Members   -  Reputation: 122

Like
Likes
Like

Posted 24 August 2001 - 11:32 PM

What happened to all the articles past 04.05?
I hope this tutorial isnt going

#59 Crash   Members   -  Reputation: 122

Like
Likes
Like

Posted 26 August 2001 - 12:07 AM

Shadow Dragon-X I dont know if you're still confused about menus but if you are, I highly recommend the tutorial on:

http://www.winprog.org/

It is simply the best tutorial on basic windows programming in C++,it will explain to you intirely about MAKEINTRESOURCE. It may not cover any Direct-X but I think it will clear up alot of confusion for you.

You can also try the tutorials on:

http://spiff.tripnet.se/~iczelion/

But all though they cover alot of details with standard windows programming, they are in assembaly language and could easilly confuse you further. *I only recommend you use this as a last choice alternative, if you are still stuck (Or know assembaly)*


Crash,


We Must Move Forwards NOT Backwards, Sideways NOT Forwards And Always Twirling Twirling Towards Success

Edited by - crash on August 26, 2001 7:31:10 AM

#60 Kaezin   Members   -  Reputation: 158

Like
Likes
Like

Posted 26 August 2001 - 12:09 PM

Great Job!

But I can''t find the second set(5+) of the tutorials... are they on this forum? A different page? Well I''ll keep looking, but I can''t find them anywhere.





PARTNERS