# Ouranos

Member

126

122 Neutral

• Rank
Member
1. ## How to do this collision response?

You pretty much described sliding planes. After calculating this plane (its normal is the vector between the point of contact and object center) and projecting your original destination onto it, you can calculate a new velocity vector to pass through your collision routines again. This is much more robust and realistic than messing with your velocity based on the colliding surfaces normal. Here's a link to an excellent paper by Paul Nettle that goes into the subject in detail: http://www.informatik.uni-oldenburg.de/~trigger/papers/good/Fluid_Studios_Generic_Collision_Detection_for_Games_Using_Ellipsoids.pdf
2. ## Drawing 2D tiled map of different textures

Choice #1 could work for you, but it's more difficult to maintain and add on to. It's also not very cache friendly depending on the size of the final texture and how many other textures your sampling from. I would do a pre-process as part of level loading where you render the map using your current technique or choice #2 onto a texture. Rather than doing this at a high frequency, you incur the cost once up front and use the result every frame.
3. ## Problem trying to set basic camera angle

You can still use the D3DX function to build your view matrix, just rotate the view direction vector before you pass it in rather than rotate the entire matrix.
4. ## Rotating camera

The link provided is just a blank page in your blog... ...A camera is essentially a view matrix and it sounds like you want to rotate the view direction (a vector in this matrix) around the Y-axis when a user hits a direction. You would also have to update the "right" vector which is an axis in your camera space by computing the cross product of the new direction vector and the up vector. This new view matrix should provide the desired effect.
5. ## NVidia Drivers don't like DX???

Make sure the nVidia driver is signed, since sometimes they like to release non-logo drivers with better performance but are not necessarily D3D-conformant. They usually will say so on the download screen, Windows will also complained if it's unsigned. Also make sure you are using the latest D3D runtime. Another cause might be that the game might be using some DX features not completely supported on your card, OpenGL might render it fine because the technique may vary in the game code depending on the graphics API it's using.
6. ## Engine doesn't work on some pc's

Crashed on mine when I clicked new game... You need to post the source and required files so that we can help you out, otherwise all we can do is say that it crashed. Since it only crashes on certain machines, it seems that you are assuming support for some hardware capability without checking for it. For example, I know youre not using it but in DirectX if you assemble a pixel shader and it fails because the hardware doesnt support that version, the pointer to that shader will be invalid and your program will crash when you try to use it, so you should always check the device caps for that kind of stuff. Again, there's no way to know unless you post the code.
7. ## longhorn

Most if not all the .NET classes you know and love will still be there. Stuff like Avalon will be available in a different namespace ( i.e. Windows.Avalon or whatever ). One big change to the way WinForms are developed is XaML which is a markup language that will be used to control the layout and some functionality of your forms, think along the lines of using XML to place your controls. There are a few videos on msdn.microsoft.com that highlight all these things (MSDNtv, The .NET Show), namely the .NET Show with Don Box is the most technical.
8. ## decoupled input

It goes beyond simply wrapping up an input API. You want your objects to receive notification of some action that is mapped to a certain key somewhere else. This makes things such as the user changing key assignments and AI a lot easier. For example, an AI control class telling an entity to move forward would look the same to that entity as a player pressing a key to move it forward, even if the player uses a different key to move forward.
9. ## Cubic Environment Mapping Problem

Post the code that actually updates the cube map, looks like something may be wrong there.