Need Help to Continue On
Ok, I'm a total Noob here but I have my Cocoa Application window going and my MyOpenGLView window works and I got it to draw a triangle but my question is where do I go from here...I'm working on creating a 3d FPS.
I just need to know where to go from having the OpenGL window drawn.
Ok new question...I'm looking for a tutorial to show me how to implament a mouse look for my OpenGL program.
I just need to know where to go from having the OpenGL window drawn.
Ok new question...I'm looking for a tutorial to show me how to implament a mouse look for my OpenGL program.
Do you have a link or something to some good tutorials that will show me. I search but always find junk links.
nehe.gamedev.net is a good place to start.
If you are willing to pay, buy a good book and/or these: gametutorials.com
If you are willing to pay, buy a good book and/or these: gametutorials.com
Thank You! This is helping very much I'll probably need help later but i'll try it myself first.
Ok I have another new question now....
How do I implement a mouse look feature in my openGL window in cocoa
How do I implement a mouse look feature in my openGL window in cocoa
Perhaps you should simply concentrate on the basics before trying to make a complicated game? If you want to concentrate in graphics, I suggest getting the OpenGL Superbible, and hold off on trying to make a game like this for... a while.
Indeed, there's a lot of learning to be done in between displaying a triangle in an OpenGL window and writing a full-blown 3D FPS. Trying to go directly from one to the other without already having a fair bit of serious game development experience is likely to be disastrous.
I think of it something like this: Any time I'm implementing something I've never done before, I'm far more likely to make mistakes or produce something less than ideal than if I have prior experience. There is of course no other way to get experience than to implement it, but the first implementation isn't likely to be fully understood, robust, reliable, flexible, etc. This applies not at the macro level to entire programs, but at the micro level to individual program components.
The way I determine whether or not I'm ready for a project is (roughly) by breaking it down into the components I'll have to implement, and making sure I have prior experience in some arbitrary minimum percentage of them. If it looks like I'll be getting in over my head, I'll probably put that project on the backburner and choose something that will help me get experience in some of its areas while building on my prior knowledge.
For the example of a 3D FPS, let's say you'd break it down into these components, for example (not necessarily accurate - this is completely off the top of my head):
I think of it something like this: Any time I'm implementing something I've never done before, I'm far more likely to make mistakes or produce something less than ideal than if I have prior experience. There is of course no other way to get experience than to implement it, but the first implementation isn't likely to be fully understood, robust, reliable, flexible, etc. This applies not at the macro level to entire programs, but at the micro level to individual program components.
The way I determine whether or not I'm ready for a project is (roughly) by breaking it down into the components I'll have to implement, and making sure I have prior experience in some arbitrary minimum percentage of them. If it looks like I'll be getting in over my head, I'll probably put that project on the backburner and choose something that will help me get experience in some of its areas while building on my prior knowledge.
For the example of a 3D FPS, let's say you'd break it down into these components, for example (not necessarily accurate - this is completely off the top of my head):
- 3D graphics system
- 3D collision detection/physics
- Input system (mouselook + keyboard to move)
- Model animation system
- Menu system of some sort
- Positional audio
- Artificial intelligence
Try to find simple features to implement.
For example, if you are rendering a single triangle, try rotating it. Have it rotate over time, automatically.
Try moving the camera on the z-axis over time.
Try controlling the camera using keys.
Then control the camera using the mouse.
Implement mouselook.
etc...etc..etc..
Small, incremental steps.
Good luck.
For example, if you are rendering a single triangle, try rotating it. Have it rotate over time, automatically.
Try moving the camera on the z-axis over time.
Try controlling the camera using keys.
Then control the camera using the mouse.
Implement mouselook.
etc...etc..etc..
Small, incremental steps.
Good luck.

