zoukankan      html  css  js  c++  java
  • TGE学习笔记06 动画模型

    我们都知道怎样将静态模型加入场景,但是如何将带动画的模型加入场景呢?
    在经过两天的摸索后,终于让我找到了方法。
    其实,这个方法很简单,但对于我们这些刚接触Torque引擎的人来说,可走了不少弯路,
    在此记录下我的探索历程,也是希望后来者能少走一些弯路。
    言归正传,下来就来说一说添加的步骤:
    1.制作动画,导出dts模型
    2.新生成一个脚本文件,比如Ma1.cs,放到./Game/Server目录下
    3.编写脚本代码,创建可在编辑器里编辑的带动画的静态模型
     1datablock StaticShapeData(Ma1Data)
     2{
     3   category = "Misc";
     4   shapeFile = "~/data/ma1.dts";
     5   isPlaying = 1;
     6}
    ;
     7
     8function Ma1Data::create(%db)
     9{
    10   %shape = new StaticShape(){
    11      dataBlock = %db;
    12   }
    ;
    13    //%shape.playThread(0,"flow");
    14   MissionCleanup.add(%shape);
    15   return %shape;
    16}

    17
    18function Ma1Data::onRemove(%this%obj)
    19{
    20   if (%obj.client.player == %obj)
    21      %obj.client.player = 0;
    22}
    4.在./Game/Server/game.cs文件的function onServerCreated()中增加一行:
    exec("./Ma1.cs");
    5.运行exe,就可以在地图编辑器中增加新的模型了,这个Ma1的模型位于Shapes/Misc/下
    6.加入模型后,模型并不会自动播放动画,可以在控制台敲入命令m1.playThread(0,"run");
    就可以看到动画了。当然,这儿的m1要换成你自己生成的模型的名字,而run换成你的动画名字。
    7.虽然看到动画了,但是我们希望刚进入场景就能自动播放,玩家可不会在控制台里敲命令。
    不要急,要想自动我们需要在./Game/main.cs文件的function loadMyMission()中增加一段代码:
       %m1 = nameToID("m1");
       
    if (!isObject(%m1))
       
    {
          echo(
    "Scene Error: Could not find m1!");
       }

       
    else
       
    {
          
    %m1.playThread(0"run");
       }


    恭喜你,所有的工作都完成了,下面你就可以重新载入关卡,看看努力的成果了。
  • 相关阅读:
    如何使用Junit
    CSS简单动画效果
    编程类软件下载地址
    常用的工具包-下载地址
    连接数据库常用工具类(二)------C3P0Utils工具类
    连接数据库时常用的工具类(一)-------C3P0XmlUtils
    浏览器输入服务器端口号来访问html网页
    使用C/S结构实现客户端上传本地文件到服务器
    冒泡排序
    一个注册界面
  • 原文地址:https://www.cnblogs.com/gamesacer/p/1106238.html
Copyright © 2011-2022 走看看