Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Dear Users,

Now, we are seeking users who can give us a hand with expertise to evolve our software more dynamically.
If you are willing to help us, we’d like you to make a registration for “Live2D Creators Circle” via the link below.
Designers, programmers, translators are especially welcomed so far.
(More detailed explanation will be given to you before we ask you to do tasks)

https://docs.google.com/forms/d/1G5KK_GL3ozwPXtTHrpi_ktbsI8UZf8jlYRSlDworyBo/viewform?usp=send_form

《Solved》 I put script for apply motion, yet still can not apply motion. help please :)

edited August 2015 in Archive
i use this script of simple.cs and place it in script folder, but still cant apply motion in unity , could you help me please? :)
i also upload my work here

------------------------------------------------------------------------------------

here the simple.cs script:

using UnityEngine;
using System;
using System.IO;
using System.Collections;
using live2d;

[ExecuteInEditMode]
public class SimpleModel: MonoBehaviour
{
private Live2DModelUnity live2DModel;
private Live2DMotion motion; // motion data
private MotionQueueManager motionMgr; // モーションの再生を管理するクラス (class for running motions)

private Matrix4x4 live2DCanvasPos;

public TextAsset mocFile ;
public Texture2D[] textureFiles ;
public TextAsset motionFile; // .mtn file

void Start ()
{
Live2D.init();

live2DModel = Live2DModelUnity.loadModel(mocFile.bytes);

for (int i = 0; i < textureFiles.Length; i++)
{
live2DModel.setTexture(i, textureFiles[i]);
}

float modelWidth = live2DModel.getCanvasWidth();
live2DCanvasPos = Matrix4x4.Ortho(0, modelWidth, modelWidth, 0, -50.0f, 50.0f);

motionMgr = new MotionQueueManager();
motion = Live2DMotion.loadMotion(motionFile.bytes); // creates a new instance for motion control class
}


void OnRenderObject()
{
if (live2DModel == null) return;
live2DModel.setMatrix(transform.localToWorldMatrix * live2DCanvasPos);

if ( ! Application.isPlaying)
{
live2DModel.update();
live2DModel.draw();
return;
}

if (motionMgr.isFinished())
{
// Starts running a motion (unless the motion hasn’t finished playback)
motionMgr.startMotion(motion);
}

motionMgr.updateParam(live2DModel); // Feed back parameter updated by a motion to model

live2DModel.update();
live2DModel.draw();
}
}



Comments

Sign In or Register to comment.