• Content count

  • Joined

  • Last visited

Community Reputation

132 Neutral

About Bedspa

  • Rank
  1. [Beginners] How to get better? Program your algebra homework.

    It's one way but depending on the language it's not necessarily a great way.   As Krohm stated algebra has a set of rules and making a program that follows those rules and gives an answer (or answers) is a good start for programming as you have to start somewhere.   The user creating their own rules will come from the interface. How will they want the values entered? Is there a more efficient way? How do they want the values displayed?   For me in the 80s, a language like GW-Basic was great because it allowed near instant graphical representations of algebraic solutions and had a set of math instructions that closely followed what I was taught in grade school.   Within 6 months I had gone from "enter a series of numbers to see a series of numbers" to a graph that could be zoomed in and out upon, compared to different graphs and a different color palate used for imaginary numbers.
  2. Final Year AI research (Why is AI hard?)

    [quote name='Blessman11' timestamp='1328557892' post='4910265'] Why has it been so hard to get really good AI? [/quote] From experience a main deterrent is that very few clock cycles are budgeted for AI. On the few professional games I've worked on, I've rarely had more then an average of 2 ms per update frame to dedicate to the AI of all NPC behavior, with a max operation time of 4ms per frame and severe memory constraints (this is from my projects specifically, I'm certain others games have different budgets). At first this might not seem so bad (just distribute the AI operations over multiple frames), but a skilled player has infuriating reaction time, so as a quick fix you tend to dumb down your AI so it can react more quickly. Then there is the ever present marketing decisions that throw a wrench in well designed systems like "we need the AI to do this undesigned feature and we need it for the demo next week" or "you know that cover and self preservation thing, we want it taken out and have the enemies charge forward so you can gun them down like Rambo". I have yet to meet an AI designer who does not understand design and implementation of complex AI, but I have yet to be on a project that allows it.
  3. Here is how I see your choice. Which can you tolerate for the next few years:[list] [*]Game Designer: Filling out spreadsheets and Powerpoint presentations all week to justify game designs you probably think (and are possibly) are horrible but your lead designer thinks are the next big thing. Then getting brow beaten by the members of your team that "your" designs can't be done. [*]3D Modeler: Modeling rocks over and over and over again. And being told at the end of the week that you did not model enough rocks, so you have to work the weekend. [/list] I might be exaggerating a little, as I know some juniors that were allowed to be creative right from the start. But most of my friends who became game designers or 3D modelers fell into the above descriptions. From your description of yourself, my guess is you would enjoy game design more. As every 3D modeler in the industry I know has an eye for the graphics quality, the color balance, whether the art style is consistent, etc. I do not know if this is something that is taught or if it comes naturally to those who managed to get into the industry though.
  4. Cybernetics and games?

    In short (and this is drawing from memory from my systems theory class) cybernetics involves structuring the mathematical and logical layout of a closed system so that it's various components can can react to the difference in potential from other elements of that system. As far as I've seen, complex cybernetics can be used for blending AI procedural animations, premade animations and IK animations. As well cybernetics can be used for making AI that runs on a "flock of geese" like behavior. But I cannot honestly say whether any complex cybernetics systems have made it out of R&D on any AAA games, with the exception possibly of some games created by Will Wright as his early games have always been more about balancing and playing the system.
  5. I've played around a little with this tool for making my sprite sheets and plan in the coming weeks to integrate it's XML layout into my game content loader. [url=""][/url]
  6. I've seen many students jump from Gamemaker and Gamemaker script to Unity3D and Jave with little difficulty (OK, so a few students heads exploded, but that's normal in the game industry). Gamemaker is an excellent start, as long as you keep your projects within what Gamemaker can easily do. It teaches the basic concepts of asset management, variables, events, etc. which all serve as an excellent foundation and reduce the learning curve for Unity3D.
  7. beginners c# program

    The first programs I used to give my students as assignments in my introduction to c# scripting class were usually: - Printing "Hello World" on the console - Making a counter - Making a multiple choice conversation tree - Making a text parser - Making an inventory program From there we would follow the standard XNA tutorials: - Make a blue screen - Make a jpg appear on screen - Make the jpg move... etc.
  8. Thank you for the tool. My team right now uses Photoshop and hand written XML files to handle our texture atlas, but this might save us a fair amount of time. I like the polish you put into the tool, I'm going to have to try out your game.
  9. Model artifacts in XNA from blender

    This might seem like an obvious question, but are you certain all your triangles are facing the right way in Blender? Is your bowl made up of 2 sided polygons (where both the front and back of polygons are rendered)? I could be wrong, but I believe by default XNA uses back-face culling (I never actually tested it in XNA, but it was the norm in DirectX).
  10. One trick I've found useful at times for creating collisions or physics effects on irregular objects without turning on per triangle collisions was to just child several small collision boxes to the main object. As long as this object is not being affected by it's own irregular shape this works very well and is usually efficient code wise. If the object has to react physically because of it's irregular shape (for example our repulsion field is attached to half bum bell like shape and has to roll/bounce down a hill while repulsing) then the only clean solution is to create a collision mesh. Is your fields repulsion strength based on distance or simply on collision? If on distance, you might want to create two or more repulsion nodes that add up each others repulsion vector. That way a peanut shaped repulsion field will not be weaker if you bump into the ends compared to the middle.
  11. [quote name='tx00824' timestamp='1329538845' post='4914102'] How is it done in AAA games [/quote] Some AAA games use something more like (in pseudo script): [CODE] Character.Angle =cameraPanAngle if (isForward) Character.PlayAnimation("walk") while (isForward) { if (Character.AnimationDone) { Character.Position = Character.RootNode.Position Character.Angle = Character.RootNode.Angle Character.PlayAnimation("walk") } } } [/CODE] The advantage here being that an animator can determine the foot step bounce, shifts in the camera angle while walking and other subtle effects that scripters and programmers like me barely notice but do make a difference in the AAA quality of the product.
  12. How do you make your art?

    My preferred tools for making 3D assets are 3D Studio Max and Photoshop. 3DS is maybe not the most efficient tool anymore for making simple models, but given I have been using it for 12 years I have less of a learning curve (and less time wasted) then with Blender, SoftImage or 3DCoat (all of which I have used and can recommend, even if I'm not proficient at any of them). For textures I use Photoshop and SSBump Generator for my normal maps. I rarely do any 2d sprite work, but when I do, I use a scanned hand drawn/colored image and pixelate it in Photoshop.
  13. Finite-state machine

    On past projects I've been on, I've found it easy to maintain to do exactly as you describe, use a switch/case statement inside a statemachine class that simply calls a series of virtual methods that call a OnWhateverEvent() that many scripters are used to working with. Then each AI inherits and overrides the virtual method and calls the base methods as need be. I've found doing things "directly" like following a linear state machine chart cause maintenance issues later on, especially if you eventually have to give your code to another programmer.