Archived

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

A Mentor?

This topic is 5536 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

I''m 19 years old and I''ve been trying to learn to program for a few years now, I''m not getting very far. The only thing that I can come up with to help me learn (short of going to school, but that''s not possible right now) is to see if anyone would be intrested in mentoring me. I figure that the best way I learn is by hands on example and having someone coach me on what I do wrong... So I just figure I need someone to help teach me, I understand the basics of writting code C and C++, but not much beyond that. I need someone to help me put the pieces together... What I propose is this, if anyone is willing to mentor me... I figure first you''ll need to establish a basline of what I can and can''t do at this point. Then, set up some excersies for me to do, give me some advice and answer my questions along the way, let me know what you think of the finished product on my end. Then as time progresses you can use me to write parts of things you actually need written for free as payment for your services... I really do have a desire to learn, I just need someone willing to teach me... I''m not asking for a lot of time maybe just a couple of times a week, a couple of e-mails or somthing (that''s about all the free time I have right now between two jobs) a week (I install hardwood flooring and work in an auto parts store if anyone is wondering). If you''re intresed you can reply here or drop me a line at space_freak@hotmail.com, please I''d really be thankful for some help. -GamEDweeB

Share this post


Link to post
Share on other sites
Ask, and you shall receive. Most people are probably too busy to dedicate their time to developing a curriculum or anything of the kind (I don't mind, but at school, they pay me ten dollars an hour for peer tutoring ...), but if you have any more specific questions, or even topics that you need information on, then feel free to ask - that's what the forums are for, after all, and the For Beginners forum most especially. Someone is likely to either instruct you or point you in the proper direction.

(If you desire more lengthy correspondence, I'm [almost] always willing to help people out with C++ to the best of my ability - not up to par with the more distinguished members of these forums, yet perhaps up to the task. One of my email addresses is in my profile, as is my ICQ, though I block messages from people not on my contact list.)

[edited by - Miserable on October 19, 2002 2:10:55 AM]

Share this post


Link to post
Share on other sites
I''m 21 and in the same boat you are in. I went to school for programming for 7 months so far. It taught me the basics, but from a business perspective. Trying to program games after learning how to write business programs is really hard because I''ve had to rethink the way I program. If your having problems using C++ to develop games, I suggest you go to www.gameinstitute.com and enroll on one of those classes like I did. I took the Introduction to C/C++ course and I was amazed at the stuff that I didn''t learn in school! After taking that class, you will have written your first game (which is pong). I plan on taking all the courses they have which are pretty cheap. Hope this helped a little.

Share this post


Link to post
Share on other sites
All I can say is get real good with whatever language you decide to go with first. Nothing is worse than trying to code in OpenGL or SDL and not understanding what they are doing because you can't read what their doing. I recommend learning things like file input and output and work with reading text and binary and writing text and binary. Then code up some simple text game and use your skills with file inputs and outputs to load and save info for the game. I wish I would have done this first before I went crazy and jumped into 2d and now a little 3d. Can you understand these statements?

          
bool CTextParser::LoadData(const char *filename)
{
ifstream fin(filename, ios::in | ios::binary);

if(!fin.is_open())
{
//do error msg here

return false;
}

fin.read(reinterpret_cast<char *>(&ubadchar), sizeof(unsigned char));

return true;
//this is not a complete code example !! =)

}


if you can read that then good start working on a text based rpg game or any game done with text its simple and lets you get experience with all the languages syntax. Hope that helps



"You have Freedom, sir"
"Were do I have freedom"
"Only in your head, we control the rest of your body and life for now"
"My FREEDOM isn't for sale"

[edited by - Mars_999 on October 19, 2002 11:36:42 PM]

[edited by - Mars_999 on October 19, 2002 11:37:31 PM]

[edited by - Mars_999 on October 19, 2002 11:38:20 PM]

[edited by - Mars_999 on October 19, 2002 11:39:11 PM]

Share this post


Link to post
Share on other sites
If I were you, I''d start with BASIC programming such as Visual Basic, because -- as the word says -- it is a lot easier to learn the ins and outs of code with that one. And, remember that programming takes more than just some months (or sometimes some years) it''s not something that you can learn quickly; trust me, reading the "Teach yourself (n-program) in 21 days" isn''t actually that effective, I mean, you can complete the schedule, but you HAVE to apply your knowledge in simple programs, anything! A calculator, a picture viewer... just don''t push your limits too hard. There are also nice tutorial web pages.

I really recommend the Online Books of VB5.0 or 6.0 if you are a beginner.

Good Luck to you all.

Share this post


Link to post
Share on other sites
I have time, I have taught people before( not in programming )online and I enjoy doing it. If you want a mentor email me

surftherocks2002@yahoo.com

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Let me second kynice''s recommendation of www.gameinstitute.com. I signed up for their intro to c++ and math for games courses a while back, and I''ve been impressed with what they offer. Classes are divided into weekly lessons, and structured into lectures, text in html and pdf format, audio clips from the instructor, messageboards and scheduled chat sessions, so you can get feedback and help from the instructor and other students in the course.

Each course seems to be priced at about what a good book covering the same subject would cost, which I consider to be a bargain for the interaction that you get with the instructor and fellow students.

Current classes offer:
-Intro to C++
-Game Math
-3D Prog''ing with OGL/D3D
-Exploring DirectInput8 API
-Pathfinding Algorithms
-Network Game Prog''ing w/ DirectX8
-Adv. 3D BSP, PVS, CSG Techniques
-Realtime 3D Terrain Rendering

They''re planning more AI courses, and courses on writing model and level creation tools for your own graphics engine, and they''re talking with several universities to get their courses to count for college credit.

It''s well worth checking into.

pentestoy

Share this post


Link to post
Share on other sites
The basics behind gfx or any programming is learning how to pass input to functions and how to get it out. Then after you master this, try to make small functions to build something bigger. This way you can reuse code and algorithms. I mean what is so hard? You can make a simple win32 app by just copying and pasting msdn docs code. Once you have the message pump setup then you setup 2D gfx environment thru 2d api. Let the app spin inside the message pump and do your own redrawing of the back ground. Then create bitmap surfaces with 2D api like dx ddraw7, and load them with bitmaps. Then blit the bitmap rectangle onto your background and presto! Then next loop iteration, you move the position of each rect corner to the side a bit by a pixel or so and you have movement. Then make couple of equal sized bitmap surfaces, load them up with different pictures, setup a timer, and on each time interval blit the successive pictures on the same part of the background and you have animation. Then move the blitted rects each loop and you have movement and animation. Look up the blit routine in ddraw sdk. Then after you got all that hook up a keyboard messages to movement code and on each key press you update the blitted rectangle position so that you can move the bitmaps with your keyboard keys or mouse. Then you setup collision system, basically you check whether each rect intersects the other and if they do the bitmaps collide. Etc, etc... just build from the base and up. All you need is "c" part of "c++" for this so don''t go overboard with object oriented programming until later once you get the hang of 2D stuff so you know what kind of objects you need to make to satisfy the implementation. If using ddraw7 make sure you setup a clipper also so that when your bitmaps go out of the side of the screen that the clipper clips them and you don''t get memory corruption errors.

In win32 you do:
1)create window and window class and register it
2)make background brush parameter NULL(so you redraw the window with 2D api instead of win32 api.
3)Setup a message loop with PeekMessage or GetMessage win32 functions
4)Put in message callback function thru which you will get a windows message if something happens like when your window needs repainting windows will send you WM_ERASEBKGND message, or when you hit a keyboard key you check which one by VK_SPACE and other defines
5)Put in shutdown code into your message callback so the window class/window you registered gets shutdown
6)Make couple of global variables to hold ddraw surface pointers as well as the device pointer.
7)In your main() function, load up the surfaces with bitmaps
8)In your msg pump code listen for any msg and if none available then draw or blit your 2D surfaces onto the screen.
9)In your msg callback function on WM_KEYDOWN I think message find out which key was down with VK_BLAH thingy and modify the destination blit rectangle''s coordinates so when the msg pump is ready to draw the gfx again it will blit them to one side a bit thus creating a movement. So your msg pump just blits or draws the same bitmaps onto the screen constantly. I recommend you make your ddraw7 app a window app at first, it''s easier to setup I think. Don''t forget that you can check the msg pump anywhere in your code even multiple of times and you can setup a rendering from anywhere with this msg pump code. I did this with my 2D game. One msg pump was for intro screen/user choices the other was for the game itself.

The important thing is you get something drawing at the get go. There isn''t much more after that unless you want to get fancy. At that point the programming and calling api functions won''t be a problem so only thinking of special effects or unique gameplay will be taking all your time. Read the msdn section on ''windows'' it explains the creation of windows and how msg pumps work, plus you can just copy and paste their win32 code to get up to step quickly. Do not go into MFC/OOP at this point because it will be overwhelming and you don''t need it at this time.

Share this post


Link to post
Share on other sites