You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
908 B
33 lines
908 B
using UnityEngine; |
|
using UnityEditor; |
|
using System.Collections; |
|
|
|
public class RenderCubemapWizard : ScriptableWizard { |
|
|
|
public Transform renderFromPosition; |
|
public Cubemap cubemap; |
|
|
|
void OnWizardUpdate () { |
|
helpString = "Select transform to render from and cubemap to render into"; |
|
isValid = (renderFromPosition != null) && (cubemap != null); |
|
} |
|
|
|
void OnWizardCreate () { |
|
// create temporary camera for rendering |
|
GameObject go = new GameObject( "CubemapCamera"); |
|
go.AddComponent<Camera>(); |
|
// place it on the object |
|
go.transform.position = renderFromPosition.position; |
|
// render into cubemap |
|
go.GetComponent<Camera>().RenderToCubemap(cubemap); |
|
|
|
// destroy temporary camera |
|
DestroyImmediate( go ); |
|
} |
|
|
|
[MenuItem("GameObject/Render into Cubemap")] |
|
static void RenderCubemap () { |
|
ScriptableWizard.DisplayWizard<RenderCubemapWizard>( |
|
"Render cubemap", "Render!"); |
|
} |
|
} |