温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

cocos2d-x在Lua中添加3d模型创建3D动画

发布时间:2020-07-23 19:03:10 来源:网络 阅读:8062 作者:酷酷小乔 栏目:游戏开发

--3d模型和3D动画的创建

require"Cocos2d"

local Sprite3DScene=class("Sprite3DScene",function()

   return cc.Scene:create()

end)

--添加create函数

function Sprite3DScene:create()

   local scene=Sprite3DScene.new()

   scene:addChild(scene:init())

  return scene

end

--添加构造函数

function Sprite3DScene:ctor()

   self.winsize=cc.Director:getInstance():getwinsize()

end

--添加初始化init()函数

function Sprite3DScene:init()

 local layer=cc.layer:create()

local spobj=cc.Sprite3D:create("boss.obj")

spobj:setTexture("boss.png")

spobj:setScale(10)

layer:addChild(spobj)

spobj:setPosition3D(cc.Vertex3F(self.winsize.width/2,self.winsize.height/2,0))

local a1=cc.RotateBy:create(10,cc.Vertex3F(360,360,360))

local a2=spobj:runAction(cc.RepeatForever:create(a1))

--添加动态模型

local spt=cc.Sprite3D:create("tortoise.c3b")

spt:setScale(0.1)

spt:setPosition3D(cc.Vertex3F(self.winsize.width/2,self.winsize.height/2-80,0))

layer:addChild(spt)

--创建3D动画

local animation=cc.Animation3D:create("tortoise.c3b")

local animate=cc.Animate3D:create(animation,0.4)

spt:runAction(cc.RepeatForever:create(animate))


   return layer

end

return Sprite3DScene


代码中调用的这些模型是从cocos2d-x-3.2中3D案例里面复制过来的。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI