- Home /
 
               Question by 
               MrP · Feb 12, 2013 at 11:25 AM · 
                c#javascriptconvertdeclaration  
              
 
              help me converting js to c#
I already converted few things but I still don't know something please help me. I marked the place what I don't know with "??".
Thank you
//JS
 var saved : float[,,];
 private var tData : TerrainData;
 var cratertex : Texture2D;
 var craterData;
 var xRes: int;
 var yRes: int;
 var layers: int;
 
 function Start () 
 {
     tData = Terrain.activeTerrain.terrainData;
     yRes = tData.alphamapHeight;
     xRes = tData.alphamapWidth;
     layers = tData.alphamapLayers;
     craterData = cratertex.GetPixels();
     saved = tData.GetAlphamaps (0, 0, xRes, yRes);
 }
 
 function OnApplicationQuit () 
 {
     tData.SetAlphamaps (0,0,saved);
 }
 
 function Update () 
 {
     if (Input.GetMouseButtonDown(0))
     {
         var g : int = Mathf.Lerp(0, xRes, Mathf.InverseLerp(0, tData.size.x, mouse.mousepos.x));
         var b : int = Mathf.Lerp(0, yRes, Mathf.InverseLerp(0, tData.size.z, mouse.mousepos.z));
         g = Mathf.Clamp(g, cratertex.width/2, xRes-cratertex.width/2);
         b = Mathf.Clamp(b, cratertex.height/2, yRes-cratertex.height/2);
         var area = tData.GetAlphamaps(g-cratertex.width/2, b-cratertex.height/2, cratertex.width, cratertex.height);
         for (x = 0; x < cratertex.height; x++) 
         {
             for (y = 0; y < cratertex.width; y++) 
             {
                 for (z = 0; z < layers; z++)
                 {    
                     if (z == 1)
                     {
                         area [x,y,z] += craterData[x*cratertex.width + y].a;
                     }
                     else
                     {    
                         area [x,y,z] -= craterData[x*cratertex.width + y].a;    
                     }    
                 }
             }
         }
         tData.SetAlphamaps (g-cratertex.width/2,b-cratertex.height/2,area);
     }
 }
 
 
 
//C# using UnityEngine; using System.Collections;
public class texturechanger : MonoBehaviour { float[,,] saved; private TerrainData tData; Texture2D cratertex; ?? craterData; int xRes; int yRes; int layers; public static Vector3 mousepos;
 void  Start ()
 {
     tData = Terrain.activeTerrain.terrainData;
     yRes = tData.alphamapHeight;
     xRes = tData.alphamapWidth;
     layers = tData.alphamapLayers;
     craterData = cratertex.GetPixels();
     saved = tData.GetAlphamaps (0, 0, xRes, yRes);
 }
 
 void  OnApplicationQuit ()
 {
     tData.SetAlphamaps (0,0,saved);
 }
 void  Update ()
 {
     if (Input.GetMouseButtonDown(0))
     {
         int g = Mathf.Lerp(0, xRes, Mathf.InverseLerp(0, tData.size.x, mousepos.x));
         int b = Mathf.Lerp(0, yRes, Mathf.InverseLerp(0, tData.size.z, mousepos.z));
         g = Mathf.Clamp(g, cratertex.width/2, xRes-cratertex.width/2);
         b = Mathf.Clamp(b, cratertex.height/2, yRes-cratertex.height/2);
         ?? area = tData.GetAlphamaps(g-cratertex.width/2, b-cratertex.height/2, cratertex.width, cratertex.height);
         for (int x = 0; x < cratertex.height; ++x) 
         {
             for (int y = 0; y < cratertex.width; ++y) 
             {
                 for (int z = 0; z < layers; ++z)
                 {    
                     if (z == 1)
                     {
                         area [x,y,z] += craterData[x*cratertex.width + y].a;
                     }
                     
                     else
                     {    
                         area [x,y,z] -= craterData[x*cratertex.width + y].a;    
                     }    
                 }
             }
         }
         tData.SetAlphamaps (g-cratertex.width/2,b-cratertex.height/2,area);
     }
 }
}
               Comment
              
 
               
              Answer by FL · Feb 12, 2013 at 07:14 PM
First ?? = Color[]
Second ?? = float[,,]
I only checked the return values from http://docs.unity3d.com/Documentation/ScriptReference/Texture2D.GetPixels.html and http://docs.unity3d.com/Documentation/ScriptReference/TerrainData.GetAlphamaps.html
Your answer
 
 
              koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                