加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-14 19:52:00 所属栏目:百科 来源:网络整理
导读:--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

--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,255);">layer:addChild(spt)

--创建3D动画

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

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


return layer

end

return Sprite3DScene


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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读