• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

166 Neutral

About evaclear

  • Rank
    Advanced Member
  1. Math behind the animation: Essential Mathmatics for Games and Interactive Applications (book on amazon) Animation specific: Introduction: Real time 3d character animation with visual C++ by Nik Lever. Advanced: Computer Animation, Second Edition: Algorithms and Techniques (The Morgan Kaufmann Series in Computer Graphics) Animation/Graphics and Physics interact with one another in pretty major ways so you may also want to consider books on shaders, and game physics to fill in details there as well. But these 3 books would give anyone a very good start.
  2. There are a number of reasons to add a comment into code. 1) As a reminder to yourself. 2) To explain a rather odd function to someone else. 3) To tell someone else reading your code something very important. 4) Documentation. The initial posters comment block is one which is likely used for documentation purposes. Programs like Nautral Docs, and Doxygen read these comments and generate HTML and .chm help files which can help somewhat automate the process of documentation. Is it a good idea? I suppose it depends, if your doing things just for yourself then it might be a good practice, but you won't see huge benefits out of it. If your writing a third party library then it can provide some assistance in generating documentation for function that the library users will want to use. And if your working in a company with other programmers then these types of comments are extremely useful when anyone new gets hired, or is working in an area of the code that is unfamiliar. The downside to these style comments is that when you refactor your code you MUST make certian to update the comments. Fortunately things like Visual Assist help automate that process as well. For future reference you can look at : http://www.possibility.com/Cpp/CppCodingStandard.html This is a pretty good document on coding style guidelines. It's more of a good practices guideline than a "how to" book though.
  3. Unity

    If you ask any professional developer (indie or otherwise) I'm sure you'll find that there is no "Best Game Engine". There are always +'s and -'s when you talk about any game engine be it Unreal or Torque. So for now what you want to look at is the "Best Game Engine" for your purposes. Which means evaluating things like: 1) Is the engine primaraly a FPS engine? If so then making another type of game such as a RPG or third person action game with it might not be feasable due to design decisions made. 2) Features. If you plan to use HDR and the engine doesn't support it...well you can see where this is going. 3) Support. The game engine you are using either needs to have support via it's developers or through a well established community (no startup engines here). Otherwise how are you going to get questions answered? 4) Tools, Your looking for an engine that has plugins for the modeling program you use, particle editors, ect. Buying an engine that only has max plugins is useless unless you actually have 3d studio max. Other tools for the engine itself help with your development/prototyping pipeline, if they suck then people are going to get frustrated and say "This engine sucks". In short the best engine is what works for your needs.
  4. I would add "spawn" locations to the map. This would allow you to set points on your map where enemies could spawn safely (I.E. not in a wall, under water etc). I would then take the players location and determine which spawn points were closest to him throw those into an array of some sort and then create a random number which would activate one of those spawn points. It would generate a enemy, and then I'd repeat the process for more enemies. It wouldn't be completely random, but I think it will provide you with the results you are looking for. Especially if you have a map editor and can easily tag locations as spawn zones.
  5. For future refrence you can use the DirectX error look up tool on any return values from the directX code and it should give you a fairly good idea on what the problem is. This tool comes with the directX SDK under the tools section.
  6. For one to learn how to "Program Games" one must first learn to "Program" in general. There are no short cuts, you can't install a compiler and begin making DOOM/Quake/Everquest before you know the programming language. There are no shortcuts. In order to make games you must have a firm foundation in the programming language of your choice (EX: C or C++). "Hello World" is where it all begins. After you have a firm foundation in the language and it's use you can then begin to look into some of the gaming API's such as DirectX and OpenGL. After this you can get down & dirty with some more topics, shaders, animation, inverse kinematics, and so on. Eventually you will learn all you need to know to make a game. If you try to skip a step however you will be left with gaps in what you know and you will constantly find yourself having to back track and find out exactly what you missed. In the end attempting to skip things you really should learn will extend the ammount of time it will take you to make a game. As for your initial statement there are plenty of books out on the market which do teach you how to make games. You simply have to have the willingness to start from scratch.
  7. Try this site. It's using a ddraw based engine but it should give you a good foundation to build from. http://www.2dgame-tutorial.com/
  8. I've had my 360 for a couple days now here are my impressions: Size: 360 System Size: 12" Wide (if you get the hard drive), 10" Deep, and about 3.25" High. Origional system size: 12.5" Wide, 10" Deep, and about 3.5" High. You do save a little bit of room due to the fact that the 360 doesn't have a curved top like the old xbox did. However due to the color the system looks much smaller than the old machine. The controller: The controllers (both cordless & corded) are about the same size as the S controller (Height & width wise). The shape of the controller is slightly different. It is easy to access any of the controllers buttons. The cordless controller has 2 optional accessories. A rechargeable battery pack. And a recharging kit that allows you to temporaraly turn the cordless controller into a corded controller and play games as the battery recharges. You can also turn off the console via the game controller. Over all this is probably one of the best console controllers I've ever used. It's good quality, responsive and fits in the hand well. Xbox live (360): There are alot of intresting things in xbox live now. They've added what they call "Xbox Market Place" which is a microsoft service that allows you to download various content. Some of the things they had up for launch included a single demo of a microsoft game (I hope more are comming) and HD Trailers of games that are either out or are comming out on the 360. Another thing on the market place was High Def Movie trailers for movies such as Aeon Flux and Chronicles of Narnia. Xbox live service now allows you to send private Voice mail messages to other players, or invite them to join you in a specific game as they play another. The interface is also entirely customizeable. Unfortunately not everything on live is free. For $6.95 you can buy 500 virtual tokens which allows you to download themes and other things for your 360. Right now the majority of the pay content consists of Penny Arcade themes and the like. Backwards compatability: Well the 360 made this a little more troublesome than it has to be in some cases. I was able to stick in Halo 1 & Halo 2 and boot up right away with out any problems. However other supported games like Ninja Gaiden required me to sign onto live & look for an update for the game before I could play it. Graphically speaking I was dissapointed with the way halo & halo 2 looked in High Def. I was expecting them to look much better. What things ended up looking like to me were little black pixel outlines around all characters in the game. It was really distracting. Though it sounds like some sort of emulator problem & I'm sure that MS will fix that one ASAP. Ninja Gaiden on the other hand looked and played fantastic. Over all I'm happy with the system. I just wish that there were more 360 games available at this point. I purchased Perfet Dark Zero and it's a nice game but I'm sort of fed up with the whole FPS genre in general at the moment. Though the next few months will see some RPGs and other various games comming out for the system. It's just a shame they missed launch day.
  9. Look into using the factory pattern. I think you'll find your solution there.
  10. Quote:Original post by radioact1ve Don't forget about Digipen, the school from Nintendo. I went to their summer workshops and I loved it. Although in the end, I decided to go to a full university, Digipen was cool. Last time I checked Digipen still wasn't a fully accredited college. One of the draw backs to this was that they couldn't really help international students with loans and the like. If they are accredited now that might have changed it's been years since I looked into the subject.
  11. It's a common misconception that a copyright holder can't/won't sue a project that "doesn't make any money". Lets take for example a Dragon Ball Z Quake 3 mod that was in development a few years back. After the first "beta" release of the mod to the gaming community they were contacted by funimation. Who informed them that they were working in cooperation with infogrames on a DBZ game that would be too similar to their mod. They could not allow something "free" to be distributed and compete with their $50.00 Dragon Ball Z fighter comming out in a few years. So they sent along a cort order to stop. In effect halting the production on the MOD. All you need to do in order to get sued is to simply make a product that in someway remotely competes with the copyright holders intentions. And that is enough to get you sued. Another miss-conception is that they can't take what you don't have (I.E. Money). In numerous court cases people have been fined a large ammount and are required to turn a percentage of their checks over to the people they've dammaged. This happens all the time. The bottom line here is that using the copyrighted sprites for development is fine. But before your games done with find an artist & replace the sprites with something origional. You'll be saving yourself alot of grief and hassle in the future.
  12. While the other methods mentioned do work I wouldn't consider making everything in your class "public" good programming practice. The whole point to C++ and OOP theory is to preserve the integrity of your data. class mountians { public: mountians() { /*constructor initialize active, h, w and d to default values here*/ } ~mountians() { /*destructor clean up the class before it goes byebye*/ } inline bool IsActive() { return active; } inline void SetIsActive(bool b) { active = b; } inline float GetH() { return h; } inline float GetW() { return w; } inline float GetD() { return d; } inline void SetH(float f) { h = f; } inline void SetW(float f) { w = f; } inline void SetD(float f) { d = f; } private: bool active; float h; float w; float d; }; Yes it's larger than the implementations that others have suggested. However this preserves the integrity of your data so the people using your class understand exactly you intended. You can also set limits on your float numbers this way. For instance in 3d most of the time you are dealing with values between 1.0 and 0.0, if you modify the SetH function to this: inline void SetH(float f) { if( f > 1.0f ) { f = 1.0f; } if( f < 0.0f ) { f = 0.0f; } h = f; } So that if I were to call SetH(5.0f) the value would be clamped at 1.0 thus preventing any problems with assumptions made elsewhere in your code.
  13. Well in direct draw you'd render out multiple frames of your animation then programatically blit each frame consecutively in order to simulate the animation. In 3d you'd export the model & key frames from max and save them into something like the .x file format. You'd open it up read it in and then again programatically interpolate between the key frames. If you want more information I suggest reading Tricks of the windows game programming gurus for 2d, and Introduction to 3D Game Programming with DirectX 9.0 for 3d.
  14. Unless your doing something super wild with your 2d game, or are using the map editor as a learning experiance I don't see much of a need to create one. Mappy is a 2d editor for tile based games that has alot of flexability. Mappy can do hex, iso, or normal 2d side scrollers. Maps can be saved out in text format, multiple layers are supported as well as animated tiles, flags can be set for tiles so that your application can know to alpha blend them or what not. And some of the newer features do things like import a bitmap image and use that bitmap image as your level. The map editor will create a tile set & then remove all duplicate tiles as well durring this process. http://www.geocities.com/SiliconValley/Vista/7336/robmpy.htm Code for the 1.3 version of mappy is also available. (Current version is 1.4)
  15. Quote:Original post by arithma I saw the links and they are great for sprites (skimmed them) However am searching for how to draw lines, rectangles and basic stuff like these. Isn't this what DirectDraw was responsible for... In other words am search for DirectDraw in DirectX 9 (Because I bought Tricks of The Windows Game Programming Gurus from amazon). It seems it depends on the DirectDraw7 interfaces which DirectX 9 lacks DirectDraw no longer exists in versions of DirectX starting in 8.0 and up. However DirectX 9 is fully backwards compatible with previous versions of directX. What this means is that it is possible to use the directdraw7 interfaces almost exactly as the book describes. The only thing you should do besides what the book shows is define the directX version your using so that your application knows you want to use the directx version 7 interfaces rather than the 9.0 interfaces. (and include the correct headers/lib files as well) That said, if you want to proceed with making direct3d applications the "basics" aren't the same as what lamothe has shown. "Basics" in direct3d or openGL for that matter consist of getting setting up the 3d end of things, creating a quad (2 triangles) and rendering a texture to them. Then transforming that quad around in world coordinates. Applying lighting/shading to these quads, and finally animating them. Drawing lines would be considered an "advanced topic" (http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/graphics/programmingguide/AdvancedTopics/LineDrawing.asp) If you want to get the basics of direct3d down I suggest doing the 6 tutorials in the SDK: http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/graphics/programmingguide/tutorialsandsamplesandtoolsandtips/tutorials/tutorials.asp That should get you started.