So you think it's better to protect the idiots at the expense of those who'd use it to learn?No, I was mearly pointing out the fact that it is not as helpful as some people say. I was admitting that it might be helpful, but it is not a miracle worker as some people say in their excuse to get their paws on the code.
Some times source code provides a better explaination. When LummoxJR told me to use a double-linked list rather than a single-linked list I had no clue how that would speed things up and I was lost. After reading the source code I understood what he meant since I didn't understand his explanation due to conflict of definitions. With source code you can't have a conflict of definitions since the compiler only reads things one way so if you understand it it is a great way to demonstrate good ways of doing things.That wasn't quite the same. That was a small example of some code that lays the base for other code. That is what OneFishDown did by releasing his extensive diagrams. I believe he has done more than is nessessary to help others, and I think it is very generous.
Maybe for you but I've learn a lot from looking at other people's source code. It is a very good tool to learn from if you're trying to learn.For other things, sure. You could learn a lot by looking at Deadron's savefile handling library. But for something like this, by the time you are on the level that you can understand everything involved, then you can probably code it yourself. Similar to OneFishDown, I knew what I want and I went for it, getting the first version of my own 3D engine done in great time (though he beat me by a couple hours, but that only makes me want to try harder). I did not even have his diagrams during the construction of my first version of it, I had just seen TRN and made code that would form a similar effect.
Yeah exactly you need to understand something conceptually before you have any hope of understanding the source code behind it. But that doesn't mean you shouldn't distribute source code because some people may not have a grasp of it conceptually. You seem to be trying to protect people who don't know what they are doing rather than helping those who know how to learn properly which are probably going to be the successful ones, not those who'd rush straight to source code for an answer.
I do not hold back source code because it cannot be grasped, the point of this 3D source code discussion is that such a demo is not badly nessessary. At least not as nessessary as something like Nadrew's hud demo, that is something that actually shows how to access a nice feature of byond. If OFD created a 3D tutorial, having nothing but "Combine the formulas in my diagrams with the concept of Nadrew's hud demo and you have a 3D world." would be about the same as resaying what he has said in his diagrams.
All I'm trying to say about it is that those who would be capable of making such code should be able to do it with nought but the diagrams that OFD has allready showed. If you couldn't, and you happened to aquire OFD's personal code and was able to accomplish it only then; then I could easily argue that you did not create your own 3D code at all, but rather mostly copied OFD's and thus have nothing but a version of his code with a few things swapped around. I could say that about most anything though, since the code that most people have, though they call it their own, is someone elses code with some revisions.
That's just my view on programming. As I've said before, I view it as an art. Master artists don't tell other artists exactly how to copy their work stroke for stroke, but if others want help on creating their own versions then the master artist may give tips and helpful ideas to the other artist to spice up his/her work. Things like an entire 3D system are viewed by me to be like masterpieces - artists put masterpieces in a gallery for all to see, but not to copy with a photocopier machine.
I do respect your views, I just view something on this magnitude and as specific as this to be something like a masterpiece. If anyone thinks they can tackle the whole 3D thing then they can go ahead and ask me to get them on the right track.
Later on, if I ever do decide to make a library out of the stuff, it would have functions that easily obtain distances and angle offsets between objects by doing that math for you; and it might even have functions to help create 3D-looking objects. But having one lib that does everything you need for you isn't my style. Someone said in another post in this thread (saphire?) that byond is not meant to produce programmers, it is meant to make games, thus if someone can slap together a few libraries and demos to make a whole new game then sobeit. Maybe that is what byond is for, but because of my approach on programming that is not how I use it. I strive to be good at it and create my art (my art being the code itself more than the actual game) and it is mostly because of this view that I do things this way. I would rather usher someone in to the field and let them create something with their own programming style. I am interested in helping people learn to code, then watching them get better and hope they get to the point where they can create things on the same scale that I can. At that point I like a bit of healthy competition, though it be friendly competition since I help those other people. If someone wants a handout, I'm not the first person to seek out. If, on the other hand, you want to discuss code and talk with me about what ways might be better to do something that other ways, and how you might begin to tackle a certain problem, then I'd love to have a chat with you and help you out.
If someone else with a different view tackles this whole 3D thing and decided to try and create a library in which all you have to do is include it and your game is 3D, then that's fine. I have no argument with that, he who creates his code can do what he pleases with it. If someone did do that, I would be interested in seeing how many people, if any, use it to actually learn how to make their own 3D system. But because of the serious artistic way I take this, that person will not be me. I just hope that can be respected in the same way I respect your readiness to hand your code out.
So you think it's better to protect the idiots at the expense of those who'd use it to learn?
Some times source code provides a better explaination. When LummoxJR told me to use a double-linked list rather than a single-linked list I had no clue how that would speed things up and I was lost. After reading the source code I understood what he meant since I didn't understand his explanation due to conflict of definitions. With source code you can't have a conflict of definitions since the compiler only reads things one way so if you understand it it is a great way to demonstrate good ways of doing things.
Maybe for you but I've learn a lot from looking at other people's source code. It is a very good tool to learn from if you're trying to learn.
Yeah exactly you need to understand something conceptually before you have any hope of understanding the source code behind it. But that doesn't mean you shouldn't distribute source code because some people may not have a grasp of it conceptually. You seem to be trying to protect people who don't know what they are doing rather than helping those who know how to learn properly which are probably going to be the successful ones, not those who'd rush straight to source code for an answer.