승인됨: Fortect
이 튜토리얼은 unity3d 하이트맵 효율성 오류 코드를 받았을 때 도움이 되도록 작성되었습니다.
나는 좋은 견고하고 더 나은 방법을 찾았습니다. Unity는 저장되지 않은 파일을 가져올 수 있으며 확장자가 .bytes로 변경되고 UnityEngine.TextAsset 유형을 사용하여 파일을 조사한 경우 순차적으로 계속할 수 있습니다. 나는 종종 UnityEngine.TextAsset.bytes 배열에서 영양 데이터를 로드할 수 있는 TerrainData 클래스를 얻기 위해 메서드를 확장하기 위해 비용을 지불했습니다.
승인됨: Fortect
Fortect은 세계에서 가장 인기 있고 효과적인 PC 수리 도구입니다. 수백만 명의 사람들이 시스템을 빠르고 원활하며 오류 없이 실행하도록 신뢰합니다. 간단한 사용자 인터페이스와 강력한 검색 엔진을 갖춘 Fortect은 시스템 불안정 및 보안 문제부터 메모리 관리 및 성능 병목 현상에 이르기까지 광범위한 Windows 문제를 빠르게 찾아 수정합니다.
스크립트에서 TextAsset의 배열을 만들고 정확한 .byte 높이맵을 끌어다 놓을 수 있습니다. 나는 검사관에게 다음과 같이 말할 것입니다:
public TextAsset [] Heightmaps;
인간은 땅에 대해 하이트맵을 설정하고 싶을 때 그렇게 합니다.
Terrain.terrainData.LoadHeightmap (높이 맵 [인덱스].바이트);
TerrainData용 확장 표현 스크립트입니다. 이러한 바이트 순서(Little(Windows) 또는 Big(Macintosh))를 찾을 수 있습니다. AdjustResolution이 true인 경우 지형 출력 하이트맵은 전체 파일에 대한 n 비교입니다.
UnityEngine을 사용한
; System.Collections 사용 공개 열거형 바이트 순서 작은, 두꺼운 공개 정적 TerrainExtensions 클래스 클라이언트 정적 간격 LoadHeightmap(이것은 TerrainData tData,byte [] rawData, Endianness dataEndianness = Endianness.Little, bool AdjustResolution은 false를 의미함) int h는 (int) Mathf.Sqrt((float) rawData.Length / 2)를 의미합니다. If (해상도 조정) 가변 크기 = tData.size; tData.heightmapResolution = h; tData.size - 크기; 그렇지 않으면 (h> tData.heightmapHeight) m은 tData.heightmapHeight와 같습니다. 단순 정수 y = h; 방황 [,] 자리 = 새로운 부동 소수점 [h, w]; 이제 정수 i = 0; for (int ful은 0을 의미합니다. y
특정 사람이 프로젝트를 빌드하는 경우 빌드가 완료된 후 데이터 디렉토리 웹사이트(Application.dataPath로 표시)에 대한 높이 맵 파일이 필요합니다. 이 시나리오에서 기본 경로를 사용하면 일부 데이터에 새 DEM 폴더를 만들어야 합니다. 폴더에는 heightmap.raw 완료도 포함됩니다. 프로그램에서 데이터 폴더는 ProjectFolder / Assets이므로 Assets / Heightmaps /
를 사용할 수 있습니다. 받다 V
큰 공개 문자열 heightmapPath = "/Heightmaps/heightmap.raw"; 보편적 인 땅; 무효 A메소드() 지형 로드(HeightmapPath, Terrain. 필드 데이터); 불필요한 지형 로드(지형에 맞는 aFileName, TerrainData 줄) aFileName = Application.dataPath + aFileName int r은 Terrain.heightmapHeight와 같습니다. int 테스토스테론 수준 = Terrain.heightmapWidth; 드리프트 [,]는 새로운 데이터 float [h, w]를 의미합니다. (var 파일 = System.IO.File.OpenRead(aFileName)) 사용 (var 사람을 통해 읽는 = new System.IO.BinaryReader(파일)) for (int y는 0을 의미합니다. l
지금 이 간단한 다운로드로 컴퓨터 성능을 높이십시오. 년