| 123456789101112131415161718192021222324252627282930313233343536 | 
							- #if UNITY_EDITOR
 
- using UnityEngine;
 
- using UnityEditor;
 
- public class RenderSkyboxToCubemap : MonoBehaviour
 
- {
 
-     [MenuItem("Tools/Render Procedural Skybox To Cubemap")]
 
-     static void RenderToCubemap()
 
-     {
 
-         // 创建一个临时摄像机
 
-         GameObject go = new GameObject("SkyboxCaptureCamera", typeof(Camera));
 
-         Camera cam = go.GetComponent<Camera>();
 
-         cam.clearFlags = CameraClearFlags.Skybox;
 
-         cam.cullingMask = 0; // 不渲染任何物体,只渲染天空
 
-         // 创建 Cubemap
 
-         int resolution = 1024;
 
-         Cubemap cube = new Cubemap(resolution, TextureFormat.RGBA32, false);
 
-         // 渲染天空盒到 Cubemap
 
-         cam.RenderToCubemap(cube);
 
-         // 保存为资源文件
 
-         string path = "Assets/RenderedSkyboxCubemap.cubemap";
 
-         AssetDatabase.CreateAsset(cube, path);
 
-         AssetDatabase.SaveAssets();
 
-         // 清理
 
-         GameObject.DestroyImmediate(go);
 
-         Debug.Log("✅ Skybox 已成功渲染并保存为 Cubemap: " + path);
 
-     }
 
- }
 
- #endif
 
 
  |