I looked at NeHe's tutorials a while ago and didn't really like them. They showed a bunch of code you could use to make things work, but had very poor explanations of what exactly made the concept work.
I don't think that code should be entirely removed from a tutorial. I do believe that it should not be a substitute for a tutorial (which is how I view NeHe stuff, basically they are over-commented code dumps, not tutorials.) I believe that it's important to have relevant bits of code referenced within the tutorial (not large portions unless necissary) and I also believe it's important to release a complete project solution or at least source code with the tutorial.
I think that if you're going to introduce SDL (which is a great idea), you should have a portion of the first tutorial dedicated to telling you how to set it up on Visual Studio, DevC++, whatever relevant Mac compilers there are and of course, the plain linker stuffs you need for any compiler or a command line situation of course. This would be above and beyond the OpenGL stuff.
Why don't we have tutorials for platform specific methods, Glut, and SDL? The first tutorial could include all of these in different sections and then the code base for future tutorials could be SDL initialized because it's cross-platform. I mean, it makes sense to have cross platform tutorials for a cross-platform library, so SDL is a great (and simple) choice. I don't see the value in removing the first tutorial and balling it up into the other ones, but I do think it should be expanded to include other methods.
Anyway, sounds like an ambitious, but very useful project. Good luck.
What should we do with the site?
_______________________"You're using a screwdriver to nail some glue to a ming vase. " -ToohrVyk
Having read the previous arguments, I believe that glut would be a suitable alternative to SDL for the standard tutorial series. Tutorials should focus primarily on their topic of discussion and any deviation, or explanation should be hidden or linked to (in an attempt to increase the value of nehe as a resource; an aspect of which it already exceeds most others). Anyone should be able to download and compile the majority of tutorials, independent of their operating system.
That said, one of NeHe's strong points is it's attention to the specifics of various OSes. I think that these specifics should be isolated from the rest of the series. I also strongly suggest we make the first tutorial as easy as possible. The Win32 API was a large barrier for me when I started learning GL.
With respect to the standard build system, we have a few issues however I still think we should choose scons. Nehe is not the place to teach scons or python. In the same respect, it is an even worse place to teach makefiles, being more complex and harder to set up. The build system should be ignorable in all circumstances. All the user should need know is how to build the binary and add their own files, not how the build system works. At the same time, it should also be easy for the user to edit the build system if necessary, an aspect in which scons is an easier alternative. Finally, the build system should be scalable. If you find yourself working on a tutorial that becomes a large project, you want to be able to expand your project without boarders. Makefiles tend to be more restrictive than scons, which is designed to be extremely flexible.
Independent of which solution we choose, this problem needs great thought. From my experience the differences and complexities of build systems tend to cause the majority of problems on this site. Perhaps we can section a portion of the site to address build systems, however I see this more as a link to the gamedev resources than anything else.
Cheers,
- llvllatrix
That said, one of NeHe's strong points is it's attention to the specifics of various OSes. I think that these specifics should be isolated from the rest of the series. I also strongly suggest we make the first tutorial as easy as possible. The Win32 API was a large barrier for me when I started learning GL.
With respect to the standard build system, we have a few issues however I still think we should choose scons. Nehe is not the place to teach scons or python. In the same respect, it is an even worse place to teach makefiles, being more complex and harder to set up. The build system should be ignorable in all circumstances. All the user should need know is how to build the binary and add their own files, not how the build system works. At the same time, it should also be easy for the user to edit the build system if necessary, an aspect in which scons is an easier alternative. Finally, the build system should be scalable. If you find yourself working on a tutorial that becomes a large project, you want to be able to expand your project without boarders. Makefiles tend to be more restrictive than scons, which is designed to be extremely flexible.
Independent of which solution we choose, this problem needs great thought. From my experience the differences and complexities of build systems tend to cause the majority of problems on this site. Perhaps we can section a portion of the site to address build systems, however I see this more as a link to the gamedev resources than anything else.
Cheers,
- llvllatrix
I agree with not using SDL. It is very useful for setting up everything so you can just "get started" but I found that I wanted to know how to setup ogl manually, using SetPixelFormat() etc.
Mabye all of the tutorials could be re-written into a framework which continues on from each tutorial.I know it does this already but not in a very organised way.
Mabye all of the tutorials could be re-written into a framework which continues on from each tutorial.I know it does this already but not in a very organised way.
OK, guys. I've got to be quick here, so I'll just dot-point what I have to say:
- Our primary priority at the moment is to get the site back up and running, with regular news posts (better than before, with integration with GameDev.net) and fixing up a few things.
- We want to refresh the existing tutorials. But we won't be making major changes (like using SDL or Python), except to remove GLUT (which sucks and has been depreciated for a long time). They'll still be C++ with win32. We'll also try and use and teach more modern C++ techniques (while keeping with the fact NeHe assumes only very basic C++ knowledge). We want to keep it low level.
- What I'd like to do with the NeHe tutorials is put them under source control so that they can be patched and re-uploaded very eaisly. So the time between someone finding a bug/problem/possible improvement/etc and it hitting the site will be as small as possible. Thus making a more dynamic system.
- And, along this same line, I'd like to add some abstraction (as noted by Simian Man and a few others above). Currently, lots of the first tutorial is mixed in with the later tutorials unnecessaraly. Abstraction also means we more cleanly keep the low-level stuff and avoid things like SDL.
- There will be extra diagrams and links and such too [smile].
- We're very happy to have contributions to the NeHe site (news, articles and even competitions), but we want to keep it focused on OpenGL, so llvllatrix's ideas for tutorials are more suited to GameDev.net itself. Adding a "other reading" section that links into GameDev.net's library is a good idea. I do appreciate people offering to help, as I'm not made of time (I wish I was).
- Site Redesign: I think it could use one too, but it's on the backburner for now - what is there is sufficient.
- Our primary priority at the moment is to get the site back up and running, with regular news posts (better than before, with integration with GameDev.net) and fixing up a few things.
- We want to refresh the existing tutorials. But we won't be making major changes (like using SDL or Python), except to remove GLUT (which sucks and has been depreciated for a long time). They'll still be C++ with win32. We'll also try and use and teach more modern C++ techniques (while keeping with the fact NeHe assumes only very basic C++ knowledge). We want to keep it low level.
- What I'd like to do with the NeHe tutorials is put them under source control so that they can be patched and re-uploaded very eaisly. So the time between someone finding a bug/problem/possible improvement/etc and it hitting the site will be as small as possible. Thus making a more dynamic system.
- And, along this same line, I'd like to add some abstraction (as noted by Simian Man and a few others above). Currently, lots of the first tutorial is mixed in with the later tutorials unnecessaraly. Abstraction also means we more cleanly keep the low-level stuff and avoid things like SDL.
- There will be extra diagrams and links and such too [smile].
- We're very happy to have contributions to the NeHe site (news, articles and even competitions), but we want to keep it focused on OpenGL, so llvllatrix's ideas for tutorials are more suited to GameDev.net itself. Adding a "other reading" section that links into GameDev.net's library is a good idea. I do appreciate people offering to help, as I'm not made of time (I wish I was).
- Site Redesign: I think it could use one too, but it's on the backburner for now - what is there is sufficient.
My 0.02$.
-no SDL or glut in the tutorials themselves, allthough various basecodes should be availible(including SDL).
Now this wouldn't matter as much because the tutorials are/should be abstracted from the basecode, i have no problem doing some of this work.
The main issue here is if we where to use SDL or glut then people would start bugging people like me on how to install them and why this doesn't work.
- Remake of the tutorials, it's about time, the glAux issue buggs me big time.
I am currently refreshing the basecode for use in my own tutorials and within it i will include a new texture loader function/class(for both tga and bmp) that does not depend on windows or glaux, if you want you can use this when it's done.
However, i am no stranger to droping the bmp part and replacing it with tga.
-sub tutorials, some tuts are just slightly different to it's predecessor, like tut 7, it could with ease be made into tut 6b, it could allso help with going a little deeper in the subject.
you could allso attach articles that explains things in detail without using any code under the main tutorial.
-New tutorials, yes and even 1-2 before all the old ones get remade, a lot has happend with openGL since the last tutorial and i think it's good if people are updated a little.
-Code repository, it might be nice to have a library of short code sniplets or classes that helps with things related to openGl and the tutorials, this would allso work well with any texture/model repository that might be added.
-no SDL or glut in the tutorials themselves, allthough various basecodes should be availible(including SDL).
Now this wouldn't matter as much because the tutorials are/should be abstracted from the basecode, i have no problem doing some of this work.
The main issue here is if we where to use SDL or glut then people would start bugging people like me on how to install them and why this doesn't work.
- Remake of the tutorials, it's about time, the glAux issue buggs me big time.
I am currently refreshing the basecode for use in my own tutorials and within it i will include a new texture loader function/class(for both tga and bmp) that does not depend on windows or glaux, if you want you can use this when it's done.
However, i am no stranger to droping the bmp part and replacing it with tga.
-sub tutorials, some tuts are just slightly different to it's predecessor, like tut 7, it could with ease be made into tut 6b, it could allso help with going a little deeper in the subject.
you could allso attach articles that explains things in detail without using any code under the main tutorial.
-New tutorials, yes and even 1-2 before all the old ones get remade, a lot has happend with openGL since the last tutorial and i think it's good if people are updated a little.
-Code repository, it might be nice to have a library of short code sniplets or classes that helps with things related to openGl and the tutorials, this would allso work well with any texture/model repository that might be added.
www.flashbang.se | www.thegeekstate.com | nehe.gamedev.net | glAux fix for lesson 6 | [twitter]thegeekstate[/twitter]
Not that I use OpenGL much any more, but I'd like to see the tutorials stick to at least one language, not this "C with some C++" atrocity, like Tutorial #43. He includes some stl headers and then continues to use char*'s and the god awful ellipsis construct. I know templates can be confusing for newbies, but functions like his "print" are a crime against programming. Since the tutorials already use Win32 and OpenGL both of which are C APIs I think it would be best to convert all the tutorials to strait C. Of course people could continue to port them to other APIs and languages.
Quote: Original post by Scet
...I think it would be best to convert all the tutorials to straight C.
Please... think of the children!
You have a point, though. C probably makes the most sense, even if it is a tad uncomfortable as an applications-level development environment.
Quote: Original post by ||v||atrix
Here are a few topics I'm considering:
- scripting languages
- build systems
- developer tools
- source versioning
- code design
- BigOh
- optimization and tracking memory leaks using valgrind
- debugging using gdb
So, basically, you want to redundantly recreate stuff that's already on GameDev (or should be) and dilute NeHe's focus on OpenGL at the same time?
Just asking.
Well, no, I'm not just asking. I think it's a bad idea. The entire notion of a one-stop shop for everything game development-related is a bad idea. NeHe should focus on being the definitive internet OpenGL programming resource, in my opinion. Leave things like debugging using gdb (eww, gross) to other sites/resources where they are more topically appropriate.
In my opinion.
I think the tutorials should be updated to C++. NeHe did this himself with the later tutorials, but he did it rather inconsistently and did not update the previous lessons.
Reading C++ is just so much easier than C even for beginners. We don't want to encourage those C idioms like the elipsis construct or using char*.
Reading C++ is just so much easier than C even for beginners. We don't want to encourage those C idioms like the elipsis construct or using char*.
Just adding onto M2tM's thoughts on emphasizing more on the explanations and less on the code dumps... Perhaps it'd be beneficial to have diagrams of some of the concepts explained. This would help people to visualize the explanations, and would be much more effective than simply reading code.
Would it be beneficial to include a section on OpenGL|ES tutorials too? Maybe have sections of tutorials for the different uses of OpenGL (ie. GL on desktops, GL|ES for handhelds, GL for Java).
Would it be beneficial to include a section on OpenGL|ES tutorials too? Maybe have sections of tutorials for the different uses of OpenGL (ie. GL on desktops, GL|ES for handhelds, GL for Java).
Quote:
So, basically, you want to redundantly recreate stuff that's already on GameDev (or should be) and dilute NeHe's focus on OpenGL at the same time?
I think you may have misunderstood me. The tutorials I write will definitely be part of GameDev proper. However, I think its valuable to have links to these concepts from nehe at the same time. Something that would let a beginner establish a base level of understanding before they attempted the tutorials. I get asked a lot of questions from people who frequent nehe about a lot of things unrelated to OpenGL. I do redirect them to the gamedev article resource, but a lot of times they dont actually know what they're looking for. BigOh analysis for example is something you would learn in a course.
Again, the tutorials I write will not be part of NeHe. They will be part of gamedev's article resource. NeHe's primary focus is and should remain OpenGL. Not some amalgam of OpenGL/Programming/Game programming. That being said, it should be relatively simple to fill in information you would need to apply OpenGL.
Cheers,
- llvllatrix
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement