   skinned animation & terrain multitexturing
  Hello,I am searching for tutorials for skinned mesh animation and terrain multitexturing. Loading a mesh and a terrain from a heighmap is no problem. But I need to texture the terrain, only colored yet, and make my mesh run...please help, need that tutorial with C# and managed directXI can find only C++ and VB.NET tutorials... =(   
  Programming language doesn't matter, for basic terrain texturing read this Click;  ok i found at http://csharp-home.com/index/tiki-read_article.php?articleId=155an code example for animated meshes, but it is sooooooo much code.I need this in short, only the animation. I am in the age of 80 when i encapsulated the important code.Isn't it so, that I only need 3 or 4 functions?InitialiseMesh(...)LoadMeshHierarchy(...)SetupMeshContainer(...)DrawMeshContainer(...)Is nobody out there who can help?@Hiyar: I already have a texture on my terrain, but this texture ist white. I think my vertex_declaration is not complete. I think I need an custom vertex, but I do not find any tutorials for that( without using a framework or xna or something like that). My texture is also very strange formed and my goal is to add another texture randomly and add different textures for differences in height maybe.I post some of my code here, maybe than you can help:private void LoadHeightData() [...]private void VertexDeclaration(){ vertices = new CustomVertex.PositionColored[WIDTH * HEIGHT]; for (int x = 0; x < WIDTH; x++) {  for (int y = 0; y < HEIGHT; y++)  {    vertices[x + y * WIDTH].Position = new Vector3(x, y, heightData[x, y]);    vertices[x + y * WIDTH].Color = Color.White.ToArgb();  } }}private void IndicesDeclaration() [...]private void CreateMesh(){    meshTerrain = new Mesh((WIDTH - 1) * (HEIGHT - 1) * 2, WIDTH * HEIGHT, MeshFlags.Managed, CustomVertex.PositionColored.Format, device);    meshTerrain.SetVertexBufferData(vertices, LockFlags.None);    meshTerrain.SetIndexBufferData(indices, LockFlags.None);    int[] adjac = new int[meshTerrain.NumberFaces * 3];    meshTerrain.GenerateAdjacency(0.5f, adjac);    meshTerrain.OptimizeInPlace(MeshFlags.OptimizeVertexCache, adjac);}private void DrawTerrain(){    device.Transform.World = Matrix.Translation(-HEIGHT / 2, -WIDTH / 2, 0);    int numSubSets = meshTerrain.GetAttributeTable().Length;    for (int i = 0; i < numSubSets; ++i)    {   device.RenderState.Ambient = Color.White;   device.Material = material;   device.SetTexture(0, grasstexture);   meshTerrain.DrawSubset(i);    }}Sry for my bad english, don't use this that often.Hope you can help...   