• Advertisement


  • Content count

  • Joined

  • Last visited

Community Reputation

660 Good

About JeffLander

  • Rank
  1. Question a grizzled and not yet bitter veteran

    Magnas, Most studios tend to use one major modelling package for the whole studio. Generally, this is 3DS Max or Maya with some XSI and a few others mixed in. The reasons for this is so that it is easy to share assets, multiple people can work on the same assets and pipeline, shared training and maintainance, and need for only one export pipeline. That said, some studios don't mind if people work in other packages as well for some aspects of their work. Say you are an animator and really prefer XSI to animate even though the models are all built in Maya. That could happen if most of the animators agree and there is a good path for assets between them. Generally, when hiring, they would expect you to know or be very ready and capable to learn the studios preferred package to get a job. So if you are a Maya enthusiast, you probably should pass on a house that only uses Max for instance. I find though that it is really the talent at modeling I care about. The program is just the tool and I can teach anyone to use the tools. They all basically do the same things and are these days so configurable that it is pretty easy to set up to anyone's preference. It is the actual talent that is hard to come by. So advice. First hone your craft and portfolio to show you are a kick ass artist. Next learn at least one of the major packages well. If you can learn blender, you can learn any other them. Really. There are free versions for learning of most of the main packages. So get them and start modeling. -Jeff
  2. Question a grizzled and not yet bitter veteran

    Hey everyone. Sorry for the long delay. E3 is next week you know... ;) Even though my project is not being shown, I have been helping out other teams in the rush. Thanks to all who have stepped in an offered their insights. That is what works best, when we all share our knowledge. To catch back up, I want to pick up on a couple of things. On the research thread started by eelke_folmer and picked up by Rob. I agree with Rob's analyis. But I think it is time that game companies stepped up. There are some problems that are very important to the future of games that haven't been adequately in academia because it is not something they are getting grants for. Likewise, game companies can't spend the time doing the R&D because they are caught deep in the production loop where all work must go to a direct project to fullfill immediate needs. Case in point that goes directly to what I think Rob's company is working on so he can offer some insights. Early on, robotics research was really cranking on motion controllers and such for autonomous bipedal walking. People like Jessica Hodgins came out with great work on the topic. But after a while, it seems like industry and defense either had their needs fullfilled or decided it was too hard a problem and there were other things to tackle. The grant money dries up then. But it turns out that locomotion is really important for us in the future of games. If we ever want to break away from the canned animation to pure ragdoll systems and get something truly interactive, we need to solve this problem. But it is huge. It will take lots of smart people working on it and production teams are not the right place. Academia as well as commercial ventures like Natural Motion or Havok are the place that this can happen. We need to tell them what we want and support this work as a community. I know Jessica Hodgins has gone around to game companies to get some grants and that kind of thing is starting to happen. It also sounds like Natural Motion has moved beyond the narrow nitche they were focused on and are looking at this problem as well. But you extend this out to other areas where we are really the only customers. Natural Speech creation for one. It is "good enough" now for industry it seems. But it is not nearly good enough for us. AI has lost lots of clout in business and industry but we use it a lot and need some big breakthroughs. The list goes on and on. So yes, I know there are lots of us looking at funding academic research as well as getting behind and helping to guide researchers already working on it. But that needs to continue to expand. If you have strong ideas and can tackle this kind of research by all means, get in touch with your local developers and talk to them about it. I think it is time we start funding our own research and publishing what we learn more. More on the other topics later. -Jeff
  3. Question a grizzled and not yet bitter veteran

    Miss Hydralisk, First off congrats for raising your two children and giving them such a great start. I also applaud you for renewing your passion for art and games and pursuing a goal with such a strong plan. That puts you way ahead of many people who don't have a plan or know how to achieve it. I wouldn't sweat the math so much. During your education in 3D tools and techniques you will be exposed to most of what you need to know. You will be talking angles and orientations in no time. If you were wanting to be a coder, that might be different, but for now, practice your art. Traditional drawing and photoshop is a great start. We often use concept artists and storyboard artists with little to no 3D tool skill. If you can quickly draw out a sketch that conveys some abstract ideas the team has on story or gameplay, that can be a big boost to preproduction. Taking those skills into 3D is the next logical step and you will certainly get that at Westwood. Your collaboration plan with your brother will really help as well. The two of you can push each other and come up with something much stronger for it. That experience also will teach you about working as a team which is the centerpiece for all production. You can take the results of that work to prospective employers to show how you can work with others. So for now, focus on your art and find your passion. Play games and figure out what types of games you really like and would like to be making. Start posting some of your work on forums like this and get feedback on direction. Most of all, enjoy this second career and run with it. Best of luck. -Jeff
  4. Quaternion limitations

    When using quaternions for dynamics it is important to realize the relationship between quaternions, an axis-angle representation of an orientation, and a rotational torque. Effectively, a Quaternion is just an axis to rotate about and an angular amount of how much to rotate. It is simply in a slightly different form that has nice properties when interpolating between them. Generally a quaternion is used to express an orientation which can only be in the 360 degree range. But you could have an angular velocity that is greater than 2 PI/frame. It won't look great if you object is rotating that fast every frame. It would lead to that weird strobing effect you sometimes see on video of rotating objects. But you can do it. So if your angular velocity is something big, you then need to intergrate it with respect to your timestep to get your new orientation which can then be expressed as a quaternion. I would suggest reading David Baraff's course notes on this, as he gives the formula and it is sort of drawn out to derive. www-2.cs.cmu.edu/~baraff/sigcourse/notesd1.pdf Formula 4-2 should show you what you want.
  5. Question a grizzled and not yet bitter veteran

    Well, as much as I hate to admit it. I am now quite a bit past my 20th year as a professional programmer and game developer. Though I have had opportunities to manage and produce, I have always felt my skills were best used as an in-the-trenches coder. I enjoy keeping up with the tech and having my hands deep in all parts of the code. I don't ever see a time where I would be unable to keep doing that. I may decide to do something else for a while. But it will certainly be my choice. I like working with the young guys and other geezers like me. In fact, I have the best times when I am surrounded by people that are at least my level but preferably better than me. I like to keep learning. If you still have the passion and don't mind doing the work, I can't imagine there not being a place for you. I look forward to being a senior citizen, still being up on the tech, and having more in common to talk about with the kids in the neighborhood than the people at the senior center. Or maybe I'll be a farmer. I have 16 trees in my orchard already and vineyard could still get planted :)
  6. Question a grizzled and not yet bitter veteran

    Several of you recently have been asking more about the how to get in question. There has been some advice on this from me and others already but some more specifics. While there is high demand for programmers, that is not the only job out there. With the new game consoles and the amount of content needed for games on them, the number of content creators needed is something like 5 to 1 ration to programmers (maybe more). That is a whole lot of artists and level designers, writers, etc. So if you don't really have a love for programming, I would say, pursue the aspect of games that really moves you. Learn about the whole process as well. An artist who can create HLSL shaders in Max for their own art is very valuable for example. Or a level designer with a Math degree that can help out the physics programmer with hard equations. If you want to be a programmer, you have to learn it and love doing it. It is not something you learn just to break in and do something else. I would slightly disagree on the QA route comment made. It can be a tough road, but it is certainly one of the few ways that someone with little technical skills can get in and start down the road that leads to designer and eventual producer. I have seen it many times. In fact many of the high end producers I have worked for started that way. But it is a long road taking many year in many cases to build up the chops to do the higher end skills. That said though, if you have a specific skill, art, level design, or even organizational or business planning skills for example, you can skip right past those steps and get right in to the meat of production potentially cutting off a few years on the career path. So, Meph, you sound to me like a candidate for level designer (art experience with game design ambitions). Pick a genre that you like and learn whatever editing tools it takes to make levels for that. Team up with a crew and build some mods to make a portfolio and then go after someone making those games. Once there, you can make pieces of your ideas come to life. You need to get away from the idea that someone will want to make your game though. Unless you are rich and can pay for it all yourself, it is more realistic to think that you will be working on another project where you can inject your ideas into. Wesley, you can probably work your IT experience into a good job at a network game maker. They need lots of infrastructure people. Find out exactly what kind of network IT people they need and go for that. From there getting into network director and more management roles could easily happen. QA people have to deal with massive network bug tracking systems at most places as well and that could be an in. foxtrot. Math is more and more needed but it is the programmers that implement that stuff for us and so you need that skill to be effective at those roles. Like I said above, if you had something else you loved as well that fit into production, having that and a math background would be great. It sounds like you want to go the long term math education route. I think that is great. We need someone to study this stuff at the high end who can teach and write books so we can rip it all off and use it in our silly little games. If you love that, do that. Get your Phd in Math and see where that takes you. Maybe learn some light game programming like game mods or little programming and work that into it as well perhaps as a way to show off you math skills. But just do it for fun and focus on you passion for math. Once you have your degree the road will be more clear. I think all this rambling explains my philosophy on this enough.
  7. Question a grizzled and not yet bitter veteran

    ThunderHawk, I don't know of a list of companies that do internships. I know many do but it really depends. Only the very big companies will have an organized program for it, EA, Microsoft, etc. I can suggest a couple of things. Write to companies you like and ask them. Give a resume of your skills and tell them what you think you could do. Also you could post to the IDGA website (www.igda.org) and tell people you are looking for internships. In fact it looks like there are several threads in the Student/Academic Relations board offering them now Best of luck. -Jeff
  8. Question a grizzled and not yet bitter veteran

    Cybergrape, I think this will be a long ranty reply :) It is a problem in the biz that most projects attempt to max out the hardware. It always seems that no matter how much power we get, the devs add stuff until it just runs acceptably. It is sort of inevitable since with each new project you want to push things further, add more stuff. But it would often be nice just to iterate under the same tech for a while and see what kind of new gameplay you can achieve. This is not realistic for the AAA teams on the big projects. But for less ambitious projects and sequels it is more the case. Also, the game mod scene is really a great place for this kind of growth. I have been in the past very interested in episodic content. However, I am a bit disillusioned with it now. It seems like a great way to do things, build your tech and a small bit of content to get the players going. Then they help fund the next installment. This kind of thing has worked well as demo lost leaders like with Doom and such. Here is one problem, though. The work that goes into making the polished final tech and setting up the pipeline to create the content is way over 50% of the work to the full project. By then you may as well just finish the full game. It is also quite difficult to create content compelling enough in the first place that people want more. It is also tough to see the economic model. If you look at small games and game mods and such, you see that there are very few that people are willing to pay for. There is tons of game content out there for free and you have to fight to be seen. It must be significantly better that everything out there for it to succeed. Just being a little better than the free stuff isn't enough. What will it take? One approach could be by getting a big license that everyone recognizes and loves. Preferably something that lends itself to serialization so people just get the idea right away (X-files and Star Trek come to mind though they have been so overdone but you get the idea). License tech so you don't have that big tech overhead and create your first installment and really polish it with a great hook. Give away the first one and have the second already done with a small price. It could work. Problem is publishers probably won't touch it so getting any real license may be hard. I would start with an existing game mod to prove the idea. Who wouldn't like an X-files Half-life mod? Your description of the engine platform is interesting. It is sort of the sandbox approach where people make their own "gameplay". It has been done to some extent but it is a very tough problem. Creating an engine that flexible and make it so anyone can create something without the full skills of art/programming/etc is very hard indeed. This is really where the mod scene is at its best. Allows enthusiasts to create new stuff that they like with varying ability. Simple art changes, full code rewrites, and such. No answers here though... Sorry. But it is interesting.
  9. Question a grizzled and not yet bitter veteran

    I agree again with ApochPiQ. Nice stuff. Many projects are looking for what is often called "gameplay scripters" who are somewhere between designers and programmers. Often it is a great stepstone job for a junior programmer with strong chops but without title experience. But often it is technical artists or designers strong in Maxscript or such. For finding out who is doing the type of games you like, IGN is a good resource. Look at the previews and reviews and they will list the developer. Then Gamasutra or Google can get the website. Also MobyGames is great for finding credits info without have the game. Once you know some games you like, it is easy to follow from there. Often the principles will have interviews and such about their process online as well. It is certainly worth a shot going after a company doing the games you like. You can really give passionately to the project then. You may not get into some of the bigger companies right away but there is always someone hiring in just about every genre. Hair length, dress code, tattoos/piercings, no biggie. Really. If you have the stuff just about any quirk is acceptable and possibly encouraged. I also like to see people who have interests outside programming. Say you took six months off to learn sculpture or something. Great. Having a record of only sticking around companies for 6 months at a time and never shipping a project through is a problem. But a little sabatical, good for you.
  10. Runge Kutta 4 For cloth simulation

    As was said earlier, if you don't reevaluate your force function between integration steps (in something like RK4 or Midpoint, etc) you are defeating the purpose of that integration system and it is a waste of time. Think about it this way with Euler steps for clarity: Straight forward Euler: Calc Force Integrate pos and vel with step = 1.0 If you were wanting a better fit, you might want two evaluations like with a midpoint style method (or just smaller Euler steps): Calc Force Integrate pos and vel with step = 0.5 Calc Force Integrate pos and vel with step = 0.5 If you just do one force calc, it is the same as just taking the full single step with no benefit: Calc Force Integrate pos and vel with step = 0.5 Integrate pos and vel with step = 0.5 (second time is using the same force) That all said, RK4 is probably overkill for your problem. It doesn't give you a lot more stability for stiff systems (like cloth) and has extra expense. Beware about throwing around the Verlet thing. Verlet is just an integrator like Euler. In fact it is exactly equivalent to what many call semi-implicit Euler. No need to explain why unless you want to go into it. But the "velocity-less" Verlet that Jakobsen talks about in his paper is just an Euler method. The trick of that paper that everyone loves really not the integrator it is the constraint solving through projection which has nothing to do with the integrator. This is where you just move the points to satisfy rigid constraints. But for cloth you may want rigid links but probably want some stretch just not as much as you get with springs that work in Euler methods. So the solution (first proposed by Provot a while back) is to use springs with pretty stiff constants that give you good response but don't blow up. Figure out what you want your max over/under stretch to be. Then use projection methods to keep that stretch limit. So if your limit is 10% stretch, project to those limits if the springs go beyond them. Works great. You get cloth that has some stretch but doesn't look like elastic. Plus it behaves in a more uniform manner in a way that straight projection doesn't. For simulating more realistic cloth with actual stiff stretch properties, Implicit methods are probably the only solution. But to just get the look, I think Provot had it right.
  11. Shoreline extraction from a heightmap

    The only suggestion I can think of off the top is given a height map, you can pass that through a thin band pass filter at the height of your water (with some tolerance). That will give you a map of all the shoreline in a manner like a line drawn edge. Then you can use one of a variety of edge detection and tracing algorithms such as are used for NPR techniques. Given that the terrain is continuous, it should be easy to find starting points in this edge map and trace each edge found either into a single curve crossing the map or a closed loop curve. Not an easy problem but seems doable.
  12. Question a grizzled and not yet bitter veteran

    Oluf, Things to look for in a good team members are: 1. Technical skills - you need to be able to do the task assigned to you. 2. Team skills - games are a collaborative task. The ability to work well and get along with your teammates is extremely important. A person with amazing technical chops will not be of much use if they can't work with the artists and producers. 3. Self-starter - Can the person given a task complete it well without constant supervision and intervention? As teams get bigger it is much more difficult to micro manage every aspect. So leaders look for people who can get a task and run with it. The work must still be what the director had in mind, works well for the task, and integrates into the project. There are lots of other issues that are important but if you score high in these three areas, you will be a valuable addition to any team. BeanDog, Production tools programming, network and infrastructure work, as well as things like internal project management tools (web based bug tracking for example) are all things very important that don't directly involve game programming. There is lots of that particularly with big teams or large network projects. Small houses don't have as much of this but all the big guys do.
  13. Question a grizzled and not yet bitter veteran

    J0be: AI is certainly an area that often doesn't get as much love as it may deserve. There are lots of reasons for this. I did a lot of work on AI research in college and studied many advanced machine learning and self organizing techniques. However, for every game project I have worked on including some RTS work, a more simple state machine or expert system always ends up being the best choice in the long run. The reasons are predictability, method for training and control, as well debugability. It turns out that most of the time, while you want a system that appears to have much intelligence, you also want to make sure the designers have the ability to control the system and tune and adjust it. Predictability also allows players to learn how the world works so they can adapt as well. Self organizing learning systems and things like neural nets are hard to set up and control and even more so tough to adjust or debug the system. For some special applications these make sense but for many game systems, they just aren't what we need. Difficulty balancing is ironically very difficult. You want your game such that anyone can play or have fun but maintains a challenge for experts and ideally scales as the player improves. This is very hard to do but I think everyone recognizes that it will be an important part of games going forward. So in my opinion, where you will really see advances in game AI is not so much in revolutionary or sophisticated AI techniques. What you are more likely to see is expert systems and state machines like we have currently. However, the parameters used to tune the "intelligence" and difficulty of the game will be more dynamically tuned to the player. Many are moving away from setting up just one or a few difficulty levels. Instead, we are designing metrics that gauge player performance in game and then adjust to provide a challenge dynamically. Advances in other areas needed to support basic intelligence such as terrain navigation and team/flock behaviour will also continue to advance, but I would put my money on dynamic balancing of AI.
  14. stopping particles after collision

    You can do the line versus line test if you want but that may not look that great for many objects. Better to treat each rigid link as a collision object with some width. The easiest shape for a line is a swept circle in 2D like a capsule. The test for collision is very simple for this primitive. If the distance from your test point to the closest position on the line is less than the width of the capsule, you have a collision. The collision normal is the vector from the test point to that nearest point. This takes care of your end points. For link segments colliding, you would find the closest point between two line segments and test that. Same idea though. Once you have a collision, you apply a small impulse to seperate the links. If it was linked rigid bodies, you would apply the impulse at the point of contact. For your particle method, you would probably be best to apply the impulse to the two connecting particles proportionally based on distance.
  15. Polygon Triangulation

    Google Delaunay Triangulation. That is what you want. Lots of descriptions of the technique if you want to roll it yourself. The basics is easy to get working, the details can get tricky depending on your requirements, like requiring certain edges or specific triangle area restrictions. The key researcher in my opinion is Johnathan Shewchuk. He has made his Triangle program available as source and it is very robust. http://www.cs.cmu.edu/~quake/triangle.html That should give you plenty to get started.
  • Advertisement