Skip to content

Instantly share code, notes, and snippets.

Last active Dec 13, 2017
What would you like to do?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor.Experimental.AssetImporters;
using System.IO;
using UnityEditor;
using UnityEngine.Assertions;
using System.Linq;
[ScriptedImporter(1, "cube")]
public class CubeImporter : ScriptedImporter
public override void OnImportAsset(AssetImportContext ctx)
// 紐付けるGameObjectを作成する
var cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
cube.transform.localScale = new Vector3(1, 1, 1);
var material = new Material(Shader.Find("Standard")); = "Cube Material";
cube.GetComponent<MeshRenderer> ().material = material;
// オブジェクトを登録する
ctx.AddObjectToAsset("CUBE", cube);
ctx.AddObjectToAsset(, material);
// JSONのデータを元に登録したGameObjectの設定を上書きする
var scale = JsonUtility.FromJson<Vector3>(File.ReadAllText(ctx.assetPath));
cube.transform.localScale = scale;
}catch (System.Exception e) {
Debug.LogError (e.Message, cube);
Copy link

tsubaki commented Dec 13, 2017

animation 61

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment