Hot answers tagged

119

Real-time rendering, even modern real-time rendering, is a grab-bag of tricks, shortcuts, hacks and approximations. Take shadows for example. We still don't have a completely accurate & robust mechanism for rendering real-time shadows from an arbitrary number of lights and arbitrarily complex objects. We do have multiple variants on shadow mapping ...


113

The current answer has done a very good job of explaining the general issues involved, but I feel it misses an important technical detail: Blender's "Cycles" render engine is a different type of engine to what most games use. Typically games are rendered by iterating through all the polygons in a scene and drawing them individually. This is done by '...


28

The Simple Way Add a quad which connects adjacent slices to each other. Texture this with a nice, melted cheese texture, complete with holes. As the slice is moved away the quad will naturally be stretched and thus stretch and skew the texture. This should look reasonable, although there will be no break. What to do here is make that texture an animated ...


26

If I understand correctly what you want to achieve, you are looking for the concept of "imposters". These are precisely 2D representations of 3D objects, used to decrease the geometric complexity of rendering the 3D environment. You can think of them pretty much as pictures of the 3D objects that are used as textures of 2D objects. The canonical reference ...


19

There does exist a flavour of Wavefront's *.obj that facilitates Vertex Coloring.. I know of two applications that can export these namely "MeshLab" (free) and "MeshMixer" (also free from Autodesk).. The vertex colours is actually found just after each vertex definition as shown below.. (Piece of *.obj) #### # # OBJ File Generated by Meshlab # #### # ...


14

You can't. All right, that was a bit harsh. Let me illustrate this with two examples. Let's get outside of the computer graphics world. Suppose you are given a piece of paper with the texture you gave us printed on it. There's a faintly printed millimeter grid in the paper as well. Now you get some scissors and some paste, and your task is to make a ...


10

I am assuming your intention is to use this normal map in a game, as it was explained in other comments, you most likely don't want world space normals since they only work for a fixed world. Your problem with tangent normal baking is that you don't have a mesh with less detail to bake the map to. This is how you do it: 1 - Create a lower-res version of ...


7

From the no-texture picture, I'm pretty sure the problem is that your cube models have inappropriate normals. You need to tell Blender that your cube edges are intended to be sharp, not smooth — what you have now are cubes that are acting like six-sided approximations of spheres. I don't know Blender so I can't tell you exactly how to accomplish this, but ...


7

Wavefront OBJ supports materials, which color groups of meshes the same color. Material statements look like this: newmtl redMtl Kd 1.00 0.00 0.00 Ks 0.50 0.50 0.50 Ns 18.00 So, Kd is the diffuse component, Ks specular. These would be specified inside a .mtl file that accompanies the .obj file. Inside the .obj file are statements like usemtl redMtl f 1/...


7

The Collada exporter in blender does not support what Collada calls "animation clips", so only the current animation will be exported. You have a few options I can think of: Fix the exporter (or convince someone to do it for you). Write a script that loops through the actions and exports a new file for each action. Use the NLA editor to create a track that ...


6

When you're reading the model into your game, you'll be iterating through each vertex of the model. Simply keep track of the max/min for each X, Y and Z axes. Using these values you can find the center of your model as well as the extents. The width is the distance between X min and X max, the depth and height are similarly calculated depending on which axis ...


5

There is no single "best" 3D Modelling software. But being a hobbyist, and a complete newbie: I'd go with Blender You have tons of resources, and it's completely free, in both senses. It's also multiplatform, so you can easily use it if you use GNU/Linux or Mac OS X. It has it's own 3D game engine, and you can script it with Python, it's probably the best ...


5

ALT+C will help you to convert a path to a mesh, then select a loop like in figure E for extruding and right after press S to scale and move the cursor to the center of the star. Now you get how to extrude the shape to the center, to give a vertical extrusion just press E and right after G to grab and then the axis where you want to move the selection like ...


5

Yes, it's typical to convert into triangles. When reading the mesh in, it's simple to convert a quad into a triangle. It will depend on the format you're exporting to. For example, the format I use, Blender will export all the vertices, then it will export index information for triangles and quads. So it's a simple matter of arranging the indices to take a ...


5

If you want to permanently change quads to tris in Blender use Ctrl+T in Edit-Mode


5

After digging down into the material settings I found the "Ambient" setting under "Shading" was set to 1.0. I changed it to 0.0 and it seemed to fix the problem.


5

To sucessfuly bake a normal-map you need to make sure of 2 or 3 things. Make sure that your mesh is manifold. (E.g. that there are no double-sided faces.) You can check that in edit-mode by pressing Ctrl+Shift+Alt+M, this will select all non-manifold edges. Make sure to select "Tangent" for Normal Space in the Bake Panel. This is the method usually used in ...


5

Install the blender2ogre add-on in Blender and you can select what you want to export. You just need to place the python script in the scripts/addons folder where you have Blender installed. Once you are ready to export, go to File->Export->Ogre3D (.scene and .mesh).


5

As usual, the answer to "Why is Unity doing this bizarre thing" is "Unity is doing an entirely normal thing with bizarre data you gave it" In this case, the origin of your flasks in Blender sits far outside the object itself, where the blue & red arrows cross in the image below: This is the point that becomes the local (0, 0, 0) point when you import ...


5

Remember, just because two things look the same or logically are the same in your game's fiction, does not mean they need to be the same entity in your game's implementation. Here you can have one model that is your boss as a whole, that you can animate as one complete being. Using submeshes or vertex colours, you can split parts of it to render only ...


4

A couple of suggestions as to what the problem may be: a) Have you checked if all the face normals of the mesh are pointing in the right direction? Its quite straightforward to do this in Blender) b) Have you applied the right UV mapping? Unity exports all the texture data based on how you set things up in Blender. Look at the Texture panel in Blender, ...


4

Yes, you should actually be able to do this within Blender using a Python scripting. There are plenty of functions available for modifying meshes. You should be able to follow the tutorial you provided, converting the methods into Python and adapting them to modify a mesh of your choosing. Alternatively, you could write a application in your language of ...


4

Definitions: Mesh: Any amount of triangles which are positioned to appear as one object. For example, a cube, it looks like one object and contains 12 triangles. I would call this a mesh. I'd like to note that this definition is not at all correct, but I will be using it, so it's best to know what I mean. Blender Object: An object in blender which, ...


4

if parts are in the same object: You can make new faces by selecting at least 2 edges and typing [F]. If you 2 have edgeloops with the same edge count you can use bridge [W]->Bridge. You can also merge vertecies. To do so, you need to select verts desired to be merged and type [alt]+ [M] and choose option. you can also access this menu from [W]->Merge If ...


4

OK, after much button mashing, I figured it out: If you click on your main FBX object, in the inspector you will find 3 buttons at the top. The ones we care about are Rig and Animations. If you go to Rig and drop down the "Root node" selector, then choose your root bone, it will open up some more options under the Animations button. Go back to the ...


4

Nothing beats practice. Reading the manuals will give you a good start at knowing what features exist and how to use each one individually. But generally, what you want to do is not available in text books so you have to figure out how to assemble parts of what you know to achieve the result you're looking for. That's where practice comes in. And forums. ...


4

I believe that might be related to "shadow acne." Try lowering the bias of your directional lights. http://answers.unity3d.com/questions/925812/unity-5-real-time-lights-cast-shadows-with-gaps-li.html


4

You need to set the mesh to smooth, then "cut" the edges that have to be sharp by duplicating them. You need to select the edges you want to make sharper, then hit Ctrl + E and choose the "edge split" option: The normals automatically orient themselves:


3

Your device states are probably wrong. This often happens when mixing 2D and 3D (for example the overload for SpriteBatch.Begin() which takes no arguments sets some device states that are incompatible with 3D rendering. No worries though, all you have to do is to make sure that the following device states are set the way you want them: BlendState, ...


Only top voted, non community-wiki answers of a minimum length are eligible