4 * License : The MIT License
5 * Copyright(c) 2010 MikuToga Partners
10 import jp.sfjp.mikutoga.bin.parser.ParseStage;
11 import jp.sourceforge.mikutoga.pmd.parser.PmdUnifiedHandler;
16 * 必要に応じて要所でデバッガのブレークポイントを設定しておくと便利。
18 public class DummyHandler implements PmdUnifiedHandler {
20 public DummyHandler(){
26 public void pmdParseStart(){
27 System.out.println("PMD parse start");
32 public void pmdParseEnd(boolean hasMoreData){
33 System.out.println("PMD parse end");
35 System.out.println("thre is unknown data below");
41 public void loopStart(ParseStage stage, int loops){
42 System.out.println("===== Loop start ===== * " + loops);
47 public void loopNext(ParseStage stage){
52 public void loopEnd(ParseStage stage){
53 System.out.println("===== Loop end =====");
58 public void pmdHeaderInfo(byte[] header){
59 System.out.println("header length=" + header.length);
64 public void pmdModelInfo(String modelName, String description){
65 System.out.println("modelName=" + modelName);
66 System.out.println("comment=" + description);
71 public void pmdVertexPosition(float xPos, float yPos, float zPos){
72 // System.out.println("x,y,z = " + xPos + "," + yPos + "," + zPos);
77 public void pmdVertexNormal(float xVec, float yVec, float zVec){
78 // System.out.println("x,y,z = " + xVec + "," + yVec + "," + zVec);
82 public void pmdVertexUV(float uVal, float vVal){
87 public void pmdVertexWeight(int boneId_1, int boneId_2,
89 // System.out.println("x,y,z = "
90 // + boneId_1 + "," + boneId_2 + "," + weightForB1);
95 public void pmdVertexEdge(boolean hideEdge){
96 // System.out.println("x,y,z = " + hideEdge);
101 public void pmdSurfaceTriangle(int vertexId_1,
104 // System.out.println("v1,v2,v3 = "
105 // + vertexId_1 + "," + vertexId_2 + "," + vertexId_3);
109 public void pmdMaterialDiffuse(float red, float green, float blue,
111 // System.out.println("diffuse rgba="
112 // + red + "," + green + "," + blue + "," + alpha);
117 public void pmdMaterialSpecular(float red, float green, float blue,
119 // System.out.println("specular rgbs="
120 // + red + "," + green + "," + blue + "," + shininess);
125 public void pmdMaterialAmbient(float red, float green, float blue){
126 // System.out.println("ambient rgb=" + red + "," + green + "," + blue);
131 public void pmdMaterialShading(int toon_idx,
132 String textureFile, String sphereFile){
133 // System.out.println("toon idx=" + toon_idx);
134 // System.out.println("texfile=" + textureFile);
135 // System.out.println("spherefile=" + sphereFile);
140 public void pmdMaterialInfo(boolean hasEdge, int surfaceNum){
141 // System.out.println("surfaces=" + surfaceNum);
146 public void pmdBoneInfo(String boneName, byte boneKind){
147 // System.out.println("bonename = " + boneName);
148 // System.out.println("kind = " + boneKind);
153 public void pmdBoneLink(int parentId, int tailId, int ikId){
154 // System.out.println("parent = " + parentId);
155 // System.out.println("tail = " + tailId);
156 // System.out.println("ik = " + ikId);
161 public void pmdBonePosition(float xPos, float yPos, float zPos){
162 // System.out.println("x="+xPos+" y="+yPos+" z="+zPos);
167 public void pmdIKInfo(int boneId, int targetId,
168 int depth, float weight ){
173 public void pmdIKChainInfo(int childId){
174 // System.out.println("chained bone = " + childId);
179 public void pmdMorphInfo(String morphName, byte morphType){
180 // System.out.println("morph name = " + morphName);
185 public void pmdMorphVertexInfo(int vertexId,
186 float xPos, float yPos, float zPos){
187 // System.out.println("id="+vertexId+",x="+xPos+",y="+yPos+",z="+zPos);
192 public void pmdMorphOrderInfo(int morphId){
193 // System.out.println("morph idx = " + morphId);
198 public void pmdBoneGroupInfo(String groupName){
199 // System.out.println("group name = " + groupName);
204 public void pmdGroupedBoneInfo(int boneId, int groupId){
205 // System.out.println("bone index="
206 // + boneId + " groupIndex=" + groupId);
211 public void pmdEngEnabled(boolean hasEnglishInfo){
216 public void pmdEngModelInfo(String modelName, String description){
221 public void pmdEngBoneInfo(String boneName){
222 // System.out.println("bone eng name = " + boneName);
227 public void pmdEngMorphInfo(String morphName){
228 // System.out.println("morph eng name = " + morphName);
233 public void pmdEngBoneGroupInfo(String groupName){
234 // System.out.println("group eng name = " + groupName);
239 public void pmdToonFileInfo(String toonName){
240 // System.out.println("toon file name = " + toonName);
245 public void pmdRigidName(String rigidName){
246 // System.out.println("rigid name = " + rigidName);
251 public void pmdRigidInfo(int rigidGroupId, int linkedBoneId){
252 // System.out.println("rigid group = "
253 // + rigidGroupId + ",linked Bone =" + linkedBoneId);
258 public void pmdRigidShape(byte shapeType,
259 float width, float height, float depth){
260 // System.out.println("type="+shapeType);
261 // System.out.println("w="+width);
262 // System.out.println("h="+height);
263 // System.out.println("d="+depth);
268 public void pmdRigidPosition(float posX, float posY, float posZ){
269 // System.out.println("x="+posX);
270 // System.out.println("y="+posY);
271 // System.out.println("z="+posZ);
276 public void pmdRigidRotation(float rotX, float rotY, float rotZ){
277 // System.out.println("x="+rotX);
278 // System.out.println("y="+rotY);
279 // System.out.println("z="+rotZ);
284 public void pmdRigidPhysics(float mass,
285 float fadePos, float fadeRot,
286 float restitution, float friction ){
287 // System.out.println("mass="+mass);
288 // System.out.println("fadePos="+fadePos);
289 // System.out.println("fadeRot="+fadeRot);
290 // System.out.println("recoil="+restitution);
291 // System.out.println("friction="+friction);
296 public void pmdRigidBehavior(byte behaveType, short collisionMap){
297 // System.out.println("type="+behaveType);
298 // System.out.println("map="+collisionMap);
303 public void pmdJointName(String jointName){
304 // System.out.println("joint name = " + jointName);
309 public void pmdJointLink(int rigidId_A, int rigidId_B){
310 // System.out.println("rigid1 = " + rigidId_A+",rigidB = " + rigidId_B);
315 public void pmdJointPosition(float posX, float posY, float posZ){
316 // System.out.println("posX = " + posX);
317 // System.out.println("posY = " + posY);
318 // System.out.println("posZ = " + posZ);
323 public void pmdJointRotation(float rotX, float rotY, float rotZ){
324 // System.out.println("rotX = " + rotX);
325 // System.out.println("rotY = " + rotY);
326 // System.out.println("rotZ = " + rotZ);
331 public void pmdPositionLimit(float posX_lim1, float posX_lim2,
332 float posY_lim1, float posY_lim2,
333 float posZ_lim1, float posZ_lim2 ){
334 // System.out.println("limX = " + posX_lim1+"-"+posX_lim2);
335 // System.out.println("limY = " + posY_lim1+"-"+posY_lim2);
336 // System.out.println("limZ = " + posZ_lim1+"-"+posZ_lim2);
341 public void pmdRotationLimit(float rotX_lim1, float rotX_lim2,
342 float rotY_lim1, float rotY_lim2,
343 float rotZ_lim1, float rotZ_lim2 ){
344 // System.out.println("limX = " + rotX_lim1+"-"+rotX_lim2);
345 // System.out.println("limY = " + rotY_lim1+"-"+rotY_lim2);
346 // System.out.println("limZ = " + rotZ_lim1+"-"+rotZ_lim2);
351 public void pmdElasticPosition(float elasticPosX,
354 // System.out.println("posX="+elasticPosX);
355 // System.out.println("posY="+elasticPosY);
356 // System.out.println("posZ="+elasticPosZ);
361 public void pmdElasticRotation(float elasticRotX,
364 // System.out.println("posX="+elasticRotX);
365 // System.out.println("posY="+elasticRotY);
366 // System.out.println("posZ="+elasticRotZ);