Page 1 of 2 12 LastLast
Results 1 to 40 of 45

Thread: 3-D game

  1. #1

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407

    Post 3-D game

    ok we all know those games like half-life, hitman, carmageddon, Midtown Madness, goldeneye 007, rainbow six, rainbow six: rogue spear, yeah yeah...those good 3-d racing games and the 3-d shoot em down games. Now how would i program a 3-d shooter game with directx? i don't even know how to even get started from a blank project. This is in Visual basic by the way. i've seen a 3-d one done before..i just dont know how to program it. can someone help me get started on 3-d programming with direct3d or directx in VB?

  2. #2
    Member SapphireGreen's Avatar
    Join Date
    Sep 2001
    Location
    I do not actually exist
    Posts
    45
    Well, first, before you do anything, PLAN!. Sit down, with a sheet of paper, plan everything, rotation, coordinates, terrain, movement... there's way more than that. After you've done this, plan a little more. Good. Now, find a tutorial, I suggest:

    http://64.23.12.52/

    This is DirectX4Vb. Very good site. It will teach you nearly everything you need to know about DirectX. It will not, however, teach you how to make a game, just design the graphics. To make the game, you will need to develope some game-skills and find another tutorial or informed person. Now, sit down and plan.

    Plan how your enimies will react (AI), goals in the game, mechanics of NPC movement, speech, etc. It is a really big job, and requires lot's of people. (Diablo II took around 90 people and 2 years, for example. Those 90 people include speech, programmers, artists... etc)

    That's it in a brief discription.
    On Error Give Up

    Mind over matter. Then if it doesn't matter, you lose your mind.

  3. #3

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    well i'm not going to make a full 3-d game like goldeneye 007 or diablo 2 or something like half-life. If i'm lucky i'll make like a 1 level game just so i can learn or something. Plus you used terms i did not know..what does NPC movement and why would i need to plan out coordinates for moving and stuff..i'm only 15 and i have no idea what to do in graphics programming..this stuff is way over my head and i would just like to learn so please bear with me.

  4. #4
    Fanatic Member
    Join Date
    Oct 2000
    Location
    Oregon
    Posts
    962
    Hum, I'm 14 and I understand it perfectly. If you don't plan out the NPC movement, it will most likely be random or non-exsitance. In my signature, there is a link to a game I made.
    Involved in: Sentience

  5. #5
    Zaei
    Guest
    Diablo 2 was a horrible game. Any game that took two years to get the bugs out, yet required a patch on the retail version before it was playable is pure crap. Do not look at it for examples.

    Now, as Sapphire said, planning is one of the most important things in game development, or any other software development, period.

    You said you have no idea about graphics programming, right? How is your general VB programming? This is pretty important too. Sure, you can cut and paste code from example sites, but even if you managed to hack it all together into a game of sorts, you wouldnt really understand it, or be able to add things.

    Next, Do you have a cable modem? The DirectX8 SDK is ~140 megs, full. You can download parts, just the ones you want for VB, so that would make it smaller. Whatever you do, make sure you get the VB help files.

    Now, sit down, and run through the first few tutorials in the help files, or at The site Sapphire mentioned. Change a few things around. See what does what. You are on your way to learning this stuff.

    Once you get all of that stuff down, you can always ask around here for help.

    Z.

  6. #6
    Fanatic Member
    Join Date
    Oct 2000
    Location
    Oregon
    Posts
    962
    Accutuly, Diablo 2 didn't take 2 years to get the bugs out. About ½ of one of the years was to get b.net to almost be able to handle the number of players. Which, I must point out, was not succesful.
    Involved in: Sentience

  7. #7
    Zaei
    Guest
    I was a stress tester. If anyone else was online when the retail released, you will recall the lag/down times that slowly got better. It was exactly the same with the stress test. Thats just poor. Also, software with that many bugs is badly designed/tested software. Blizzard should read Code Complete.

    Z.

  8. #8
    Good Ol' Platypus Sastraxi's Avatar
    Join Date
    Jan 2000
    Location
    Ontario, Canada
    Posts
    5,134
    Is that your bible now Zaei?

    All contents of the above post that aren't somebody elses are mine, not the property of some media corporation.
    (Just a heads-up)

  9. #9
    Zaei
    Guest
    Design Patterns is a more likely choice, Sas =P.

    Z.

  10. #10
    Frenzied Member Jotaf98's Avatar
    Join Date
    Jun 2000
    Location
    I'm not gonna give you my IP address! Ok... Portugal, South-Western Europe, 3rd rock from the sun (our star is easy to find, a 47 Ursae Majoris in the Milky Way :p )
    Posts
    1,457
    Well, there are basically 2 ways of making a program:

    1) The Microsoft way. It's also how most software companies make their programs. Basically you just code away and only try to debug it when it's finished. Like, don't mind an occasional "Subscript out of Range" or "Division by 0" error
    RESULT: Extremely buggy code (kinda like Windows ). Good thing is that it's extremely fast to make a game like this (like 2 years instead of 5 )

    2) MY way . Code something to load a level and display it, test it a lot and if you find a very small bug or glitch, don't move on until it's corrected. Then add some weapons maybe, then a lights engine, and only then the enemies and their AI. (I may have forgotten something but it's just an example) And remember NOT to move on until everything is working at 100%.
    RESULT: Extremely organized and optimized code (that's what eventually happens while debugging ). It's also VERY solid code and bug-free. Bad thing is that it takes a lot of time to code... but since we're using VB it doesn't take that much time does it?
    Code:
    Temp = Me.GetIQ()
    'Error 9: Overflow
    'DON'T PANIC! :eek:

    To learn how to use realistic effects in your games like fire, rain, snow and magic effects, read my article on particles systems here.


    Jotaf's Theories!
    "Cats land on their feet. Toast lands peanut butter side down. A cat with toast strapped to its back will hover above the ground in a state of quantum indecision."

  11. #11
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    Hi,

    I am also 14 too. I tried starting DirectX8 programming awhile ago with VB, and after downloading the SDK for few days , i found that I had to learn more about api stuff. I tried making a DX8 figure without planning and I messed up big time. Then I researched more and finally made a 3d triangle that spins! (oooooooo) I am supposing that it is the same with games too. Plan. I am going to give up trying to make 3d games with VB, and use C++. I suggest that if you try to make any rogue spear, NASCAR 4, etc. use C ++. It is much more faster and conservative.
    Visual Basic 6, HTML, JavaScript, learning C++

  12. #12
    Frenzied Member Jotaf98's Avatar
    Join Date
    Jun 2000
    Location
    I'm not gonna give you my IP address! Ok... Portugal, South-Western Europe, 3rd rock from the sun (our star is easy to find, a 47 Ursae Majoris in the Milky Way :p )
    Posts
    1,457
    Look, I'm 15, I have 2 years of experience in VB and that's not an excuse to say that I suck at it
    (Probably because I don't... at least not too much )

    Personally, I like 2D games much more than 3D games. 2D is easy, fast, doesn't take that much calculations (do you don't have to be a genius to make something decent), and has been around for much more time than 3D so it's much more evolved.

    2D games which use nice special effects/shadows/lighting, a smooth interface which fits into the game (not just some digital numbers in a green box ), and have photo-realistic images (3D-rendered) can make you feel like you're inside the game, while any 3D game, even the ones that have polygon counts of 5000 per character, don't (your brain can easily tell that they're not real).

    My advice, for now make 2D games; when the 3D techniques are more developed and they get rid of that old polygon system (yes, I'm pretty sure there are better ways of drawing in 3D), THEN you should make games in 3D.
    Code:
    Temp = Me.GetIQ()
    'Error 9: Overflow
    'DON'T PANIC! :eek:

    To learn how to use realistic effects in your games like fire, rain, snow and magic effects, read my article on particles systems here.


    Jotaf's Theories!
    "Cats land on their feet. Toast lands peanut butter side down. A cat with toast strapped to its back will hover above the ground in a state of quantum indecision."

  13. #13
    Zaei
    Guest
    If Microsoft tried to code Windows (or even DOS), without debugging, Microsoft wouldnt be a company today. If Microsoft tried to write Windows (or even DOS) without debugging, thier code wouldnt have survived all the way through Windows 98 (it had a lot of 16-bit code in there). Point? Microsoft doesnt write horrible buggy code.

    "Your" way is probably the way every other half-decent coder works.

    The future of rendering is probably real time ray tracing. Unfortunately, this cannot be done correctly on modern machines. In fact, even with lots of hacks and cheats, you can still only acheive 20 - 35 fps, due to the fact that it's all done in software. Second, you cannot get, for instance, a character, to raytrace without polygons, unless, of course, you ARE a genius, and can figure out a formula to correctly intersect a correct human body with a ray. Third, Ray tracing (real time, or otherwise) is a very mathematically intensive topic (read, lots of calculations).

    Now, sure, you can stick to 2D games. Then, when the time comes that you feel that 3D games have evolved enough for you to spend your time on it, you will be so very lost. You dont learn anything if you dont challenge yourself.

    Games arent all about graphics. Who cares if the models look polygon-y (or not, take a look at Max Payne...)? If you want to make 3D games, make them, but be sure that you learn all of the basics first. I never actually learned BitBlt, or DirectDraw, and I am working on one of the most ambitious games to date. Just besure not to get ahead of yourself, and have a lot of fun!

    Z.

  14. #14
    Good Ol' Platypus Sastraxi's Avatar
    Join Date
    Jan 2000
    Location
    Ontario, Canada
    Posts
    5,134
    The future of rendering is probably real time ray tracing
    Thats what I've been saying over the past two years too =)
    All contents of the above post that aren't somebody elses are mine, not the property of some media corporation.
    (Just a heads-up)

  15. #15
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    I have only been doing VB for about 6 months now and not thinking about games again until I lern more. By that time "they'll" probably have come out with a easier and more efficient ways of drawing 3D graphics. AND use C++ when making a 3d game! 2D games may be easier to make, but 3D is much more fun!
    Visual Basic 6, HTML, JavaScript, learning C++

  16. #16

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    I dont know C++, but i know VB...yeah, VB might not make the best games but..hey it's a start to gaming programming.

  17. #17

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    so can someone tell me how would you program like how you switch guns or whatever in games? like in goldeneye, how would you design guns and then make like 10 of them and switch through them.

  18. #18
    Good Ol' Platypus Sastraxi's Avatar
    Join Date
    Jan 2000
    Location
    Ontario, Canada
    Posts
    5,134
    I wouldn't think specific Qs like that should be asked... but I'll answer anyway. You'll have your gun models in an array, and then another array that tells you what guns you have... and another integer value that has the number of guns you have.

    Okay, say you have 10 guns -- 0 to 9. Right now, the player has guns 2, 3, and 7. You would put these in an array and then make the integer value 3 [guns]. Make another integer that is "CurrentGun", make it be array_of_guns_you_have(0). Then when you want to switch, you add 1 to the current gun and make the model GunModels(array_of_guns_you_have(currentgun)).
    All contents of the above post that aren't somebody elses are mine, not the property of some media corporation.
    (Just a heads-up)

  19. #19

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    ok..the problem is i didnt understand one thing you said..lol. i need some examples so i can understand it visually...(i learn better than way) does anyone know of any good examples? 3-d programming is what i would like to learn (also i would like to use DirectX)

  20. #20
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    ok I have a question on 3D games. If I'm going to make a 3d FPS game, could I make the 3d models using a different program like autocad or somethin, and then use VB to actually put them in a 3d world and make them do stuff? I plan to switch to C++ to make 3d games after I master vb, so can I also do that with c++? Also, which is better for making 3d games, Direct X or OpenGL? I know that DX is only for microsft stuff, and opengl is for everything, but which is better for a combo of quality and speed?
    Visual Basic 6, HTML, JavaScript, learning C++

  21. #21
    Zaei
    Guest
    Keyword here is Learn. Forget about guns. Get the SDK, at least the VB parts, WITH DOCUMENTATION. Go through several of the basic tutorials. Make the spinning triangle. Add some stuff to it. Make it a square. If you want to do ANYTHING with DirectX, learn from the very bottom, up. Once you being to understand everything, then things start to speed up. Dont try to skip ahead, and take things slow. That is all the advice i can give you right now.

    Z.

  22. #22

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    ok..i can get SDK from the download center at Microsoft.com right?

  23. #23
    Zaei
    Guest
    The only real differences between OpenGL and Direct3D are their interfaces. DirectX is Object Based, while OGL is function based. Since no one here is planning on using C, that isnt much of a difference. The second is Portablity. DirectX will only run on Windows (or the XBox). OpenGL has been ported to a LOT of systems. But, since everyone here is still learning, This isnt a big issue. So, it all comes down to personal choice. DirectX will be far easier in VB.

    Z.

  24. #24
    Zaei
    Guest
    Yes, you an get it from MS. If you have Cable, and plan to go to C++ (recommended), get the full SDK.

    Z.

  25. #25

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    Ok, well, it's 150 MB and I'm on 56k. So i'll just let it download when i'm asleep..lol. No i'm not moving to C++, i dont know a lot about it.. i can still use SDK in VB right?

  26. #26

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    what exactly does SDK mean and what does it do?

  27. #27
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    I have the SDK (software development kit) for Direct X 8. It gives you the type library for Direct X 8 so you can program with Direct X 8. If your going to download it on a 56k like i did, I suggest you get a download program like Getright so if you get disconnected it will save the spot where you left off.

    The Direct X 8 SDK is for both VB6 and C++, so if you are using only VB, you dont have to download the files that have anything to do with C++. I suggest that before you get into 3d games with DX8, that you learn windows API thoroughly since it involves LOTS of it. I am putting games off to the side right now until I get enough doe to buy VC++, so I can learn games withC++ from scratch and API. There is a guy using C++ and OGL to make an F-22 Raptor flight simulator... and is my eventual goal..

    Anyway, IS it possible to make 3D models with AutoCad or something and then transfer them into VB or C++ into an actual 3d world to be used ina game?????????
    Visual Basic 6, HTML, JavaScript, learning C++

  28. #28

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    Yes i am using getright..trust me, i cant wait till DSL comes out here..

    also, i dont get disconnected really...AOL is actually pretty stable. I stayed on for 36 Hours straight through once while getting one of the linux distributions..i think Red Hat 7.0.

    Yes i do know Windows API, i hope. Probably not as well has you expert programmers but i'm used to it.

    Just the way people make guns or 3-D objects like people is crazy...how they make them walk and how the gun has moves up and down and the bullets..like in MS Combat Flight Sim. that game has the outside view of the plane in 3-d view. I want to learn how to make games like that. But, since i am just starting out, i need help from you guys. And i thank you all in advance for helping me out.

    Also, one last question, are there any books out there that teach DirectX (or 3-d Programming) in Visual Basic? (I dont know C++ well enough to program 3-d games.)

    ok sorry for the long post..see ya.

  29. #29
    Zaei
    Guest
    Recommendation: Learn C++.

    That said, I dont know of any books that teach DirectX using VB (at least not off the top of my head). Look around http://www.vbexplorer.com/directx4vb . This site has a LOT of DX8 tutorials in VB. Once you get pretty confident using things like Vertex Buffers, FVFs, and the DrawPrimitive() call (you have no idea what I am talking about, but dont worry. Youll learn =), then you can start in on something more "game like". Try a simple flat ground Polygon, and use the arrow keys to move around, that kind of thing. Then just work from there. Get some game ideas in your head, write them down on paper. Try to get a basic idea of HOW to program each thing that you write down. Dont worry if you cant, at this point, the more you learn, the easier it gets (ive been working with D3D for perhaps 6 months, and I can pretty much see how most of HalfLife was designed and created, for instance). When you get some ideas down, run them through me, or someone else on this board, and we can give you pointers, etc.

    Z.

  30. #30

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    darn thats cool...you know almost how halflife was created and designed...how old are you anyway? hopefully soon i'll learn to be that good. in Jan 01, when i started..i didnt even know how to close a form but now i'm programming actual programs that are somewhat worthwhile. Anyway, thanks a lot. I'm downloading DirectX 8.0a SDK right now. I'll try out some stuff.

  31. #31
    Zaei
    Guest
    Thats how it works. The more you learn, the more fun it gets. You will get there, but ya gotta keep at it =).

    Z.

  32. #32
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    you know all the 3d models in games, well if I was going to use C++ to program a 3d games, how would I make the 3d models in the game? I am just curious if I would actually use C++ code to make the models, or could I use a 3d model program like autocad to make the models????

    I looked at the Direct X 8 Blackbook for c++ and it looks like you can make pretty cool FPS games with great graphics. But before I learn game programming, what are the advantages and disatvanteges ofprogramming 3d games with VB or C++? Is C++ faster?
    Visual Basic 6, HTML, JavaScript, learning C++

  33. #33
    Zaei
    Guest
    You can use a tool such as 3D Studio to create your models, and then load them into your game.

    C++ has been clocked at 100+ times faster then VB. It is also truely object oriented, which is one of the reasons it is the main choice for game development.

    Z.

  34. #34
    Junior Member
    Join Date
    Oct 2001
    Location
    Gränna, Sweden
    Posts
    23
    I would definately recommend anybody doing 3d games to
    1) Get somebody to do models for you (and don't give a **** about how it is done
    2) Download MilkShape3D and do it yourself. www.swissquake.ch/chumbalum-soft (I think). This way, you get LOTS of more control.
    Bye

  35. #35

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    does anyone know any good books on DirectX programming with Visual Basic?

  36. #36
    Hyperactive Member dflw's Avatar
    Join Date
    Apr 2001
    Location
    ct, usa
    Posts
    412
    http://www.vbexplorer.com/directx4vb

    is an excellent site for begginers starting DX8 3d games
    Visual Basic 6, HTML, JavaScript, learning C++

  37. #37

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    well i dont exactly want sites..i want a book i can sit down and read that explains things bit by bit. Yes, that site might do it, but i think a book would explain it much better.

  38. #38

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    do they even make books about directx and 3d programming in vb?

  39. #39
    Zaei
    Guest
    That site is THE best resource for VB game developers. Period. You will get a very good understanding about what is going on. Check it out. It is where I started out.

    Z.

  40. #40

    Thread Starter
    Frenzied Member SomethinCool's Avatar
    Join Date
    Jan 2001
    Location
    Malvern, PA
    Posts
    1,407
    ok, using that MilkShape 3D thing..how would you use the 3D things in VB? how would you program them into it..

    i made it into like big building looking things...how would i put it in my program?

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width