Re: [Plib-devel] Re: KobayashiMaru & plib
Brought to you by:
sjbaker
From: Wolfram K. <w_...@rz...> - 2000-08-12 10:30:31
|
Alex wrote: >I've today drawn my first image, see my 3D math help page ;-) Huh, I didn't see it? >> > it is commercially better to write a gaming engine and make 1,2,3,4 games >> > out of it and sell them all for a high price, than to write the >> > universal gaming engine that sells just once. No. If this could be done and the engine could compete favourable with specialized engines, then the company doing it would get heaps of money. Think of the time this would save the developers of the games. >> Start simple. Design one game in one genre. Just wait and see what >> actually comes to bite you. Simple things like collision detection, >> best use of the Z buffer and where to place the camera are unbelievably > >I don't have any idea about any Z-Buffer - in my opinion, thats your >part. Tell me how to use it - or just gimme some url doing this. Well, you should of course understand the Z-buffer so that, for example you can set near and far to reasonable values. But I agree this is fairly simple. As is, if I haven't overlooked something, everything you did up to now. Collision detection isn't simple at all if you want some accuracy. Steve mentioned some, but not all problems in his post. >The point is: if I'm going to concentrate on this one genre, I might >write a good game - and get stuck with it. >I have LONG LONG thought about howto write this Starfighter game >(version 1.0.0) in a way that it can easily extended to v2.0.0 in >some time, but if I would concentrate to this one genre, I had to >completely re-write code and classes to expand it. I don't understand this, it sounds like a general engine is easier than a specialized one? > >V1.0.0 will be a good starfighter game, with all possibilities >to extend it. >It will be better than XwA,XwT or WC, but it will probably not be >better than SpaceThing or glWars, from which I've heard today. I have never played XwA,XwT, but I cant imagine that you could just do them in, say a few man-months so you can then improve. AND you need some time to learn 3D graphics, game development etc. With plib you have a HUGE head start over people a few years ago, but it STILL cost you a long time to do just the rotations. I think one problem is that you come over as someone who hasn't done anything hard yet, but is sure that what all other people do is trivial and if he just tried it, he could of course do much better. One advice if you want to become a good programmer and see things more realistic (which can be frustrating): Before you do things, guess how long it will take. Then, after you have done it, you can compare. Being able to guess fairly accurately how long something will take is an important skill for developers. >> > I have come to the conclusion that all these games are 'the same'. Some time ago Steve wrote a great post either here, in plib-users or in the ppe-mailing-list about the different needs that different games have for cameras. I didn't find it, maybe you will find it in the archives. But if you think all the people at your uni have no idea and their advice is bull, think about John Carmack. Many people think he is one of the top programmers and from all I know about him I agree. Still, since Wolfenstein3D (how long ago was that?) he has done not only the same genre of game - FPS - but I would say even the same sub-type. For example, AFAIK (I am not into FPS), all his games were mainly "indoor". You could also have a FPS with people running around in a hilly landscape without buildings. This would also be a FPS, but (AFAIK) different to the ones he wrote. If you now think that this is directed against him, no, just the opposite: I am a bit of a perfectionist myself and think its great that he could advance all the time and is now top-of-the-stack in FPS programmers. BTW, I am writing two 3D modelers right now, a closed source one for several years now and PPE. If even J.C. can still advance even so he works on such a small field, do you really think you can write a playable universal game engine? Sorry, but even if you had unlimited CPU and graphics power - which you don't - you couldn't do it. To do it really universal, it would become VERY complex. Just think about collision detection. Some games might need to calculate a rotation after the collision. So, you need to exactly know where it collides - face to face, vertex on face, edge-edge etc. Then you have to see whether something breaks of and if it does how much the kinetic energy changed etc. If after the first collision the object rotates and 0.00001 seconds later a second collision occurs that stops the rotation, will you catch it? >When a Starfighter flies into a hole in an asteroid, there will be sort >of portal and he will get connected to a KobayashiMaru mission >server playing the inside_asteroid Mission. >At that moment, calculation gets done by another engine, and the people >on the ground wont see it again until it comes out of another >portal. But then your engine isn't universal after all . >If the spaceship is so near that is makes sense to let you see >all 1.000 polygons, it's probaby so near that you wont even have >to think about drawing something other. You are knocking down other games and argue like this?!? >> > I've got so many ideas, I don't know where to start next. Well, that's all we are saying: Start with one thing, for example a space fighting game a la Elite. Once you have done that, you can plan the next thing. BTW, I loved Elite. >> > It will surely a game that will be a lot better than other commercial >> > games, but I also think that graphics and sound will suck. Relatively. Do you think (all) game programmers suck? >But show Tux to a person who pays 80DM for a commercial game and Huch ;-) >is used to graphics like Quake3, he will probably just laugh and >say 'yoz gfx sukkz' or so. And you really think you can beat many commercial games?? >> OK - so *everyone* is telling you the same thing. People with 20 times > >They don't have the experience, so I igonored it. Can you tell me one single area where you have experience? I would guess at the uni you will find people with much experience, maybe not game development, maybe not even 3D gfx (so that would surprise me), but with experience in completing stuff, with OO, with writing large stuff, with generalizing/specializing, with design decisions etc. >I'd like to come to your town and explain KobayashiMaru to you, I >just need a ticket, a big blackboard and some hours of talking >time. I fear that wouldn't help. I fear that for each argument pointing out a difficulty you would say - oh I will simply do it this way. I hope I am wrong so. Of course all the problems can be solved. After all, all the problems were solved in one or the other game. And if one engine for one genre has a difficulty with another, then just have n engines working together looking as one to the games-programmer. But the problem is how much time you will need (Steves 500 years isn't unrealistic IMHO), how complex it will get (I would bet it gets so complex that you couldn't do it ever as a single person even when working full time on it) and how fast it will run. >An actionbased flightsim doesn't need realism or accuracy >at that high rates of speed. Yes, but action. Steves point was that it will look like you travel 50 mph - and that is very bad if you just bought the newest HyperTuxoWroom-SpaceShip. The argument is not about realism or accuracy. Sigh. One thing is strange about you: OToneH, you say that theoretical study of matrices was yuck and Steves practical page great. But OTOH you seem to think that you are able to foresee most of the problems of your project. I think you will only be able to do so if you have some experience of your own. So, PLEASE stop theoreticising about what great and unbelievable things you could do in V 2.0. >If I'd been you, I'd answered as simple like that: > >There is a TerraGear project to do this, and yes, it is in principe >possible, BUT TerraGear is constructed for a very detailed viewing >of the landscape at the speed of slow airplanes, so you'd get low >framerates from this, better look somewhere else. > >(I didn't asked if it will run fast, just if it _can_ be possible) Well, we thought you wanted to make a playable game. If you want to make something to test theories, that's fine by me, but say so. And Steve didn't say the problem was that terragear is unsuitable. He said that to get good frame rates you have to tweak the game design, that is, you cant have a universal game engine with todays hardware. >At the moment, collision checking is done on 'Shield' level, meaning >an impact in a sphere around the ship - this can be done without. Ah - That's of course the most primitive solution. What you code depends on the game-design (and vice-versa). >When a CarObject is inside the radius of a StaticGroundObject, further >collision checking is done with plibssg. So, if you do a racing game, this check is completely super-fluous. What you code depends on the game-design (and vice-versa). >possible solutions: i) more framerates by > models with lod > changing the fonts > optimising my code a lot > ii) a mathematical algorithms I yet have not the > slightest idea of. > iii) run the KIs that steer in the ship in a > 'minimum speed' in a seperate task, when > neccessary leaving frames to display off > to have cputime for the engine. > >When I had realized that problem, I didn't continue to work on that >but decided to wait until i) has been solved You do realize that i) isnt a complete solution, don't you? >It is true that you could say the things shorter, but on the >other hand I like this discussion, you're the first one >I have to respect, Good, then try not to offend people. >No, only one. >I immediatly worked on that part, and I have seen that it was true, >the other wouldn't probably have been needed. Good. But it would have been even better if you had said so. Just "Ok - I am testing it now" would have been enough. >*PLEASE* remember this: > >You went public when you were 1.0.0, as you told me. >[...] >Please see the difference between a fully grown & tested game, and >my early stage. This is very funny. All we are telling you is that at 0.29 you should not think about 2.0 or 10.0 and even less brag about 2.0 and 10.0 . Oh, BTW, nobody looked at your code until yesterday, so nobody criticized it. I just tried to compile it under Windo$, I will e-mail you. Sigh, I didn't want to invest this much time, but once you start writing you don't want to stop midway. BTW, FYI, Steve is just working on some very basic stuff of PPE, everyone else has to stop coding on it until he is finished. I think it is great that Steve puts as much time into answering people as he does. I have learned quite a lot. But it is absolutely understandable that he resents wasting time. >Alex Bye bye, Wolfram. |