文档章节

cocos实现unity组件式

梦想游戏人
 梦想游戏人
发布于 2016/12/24 12:15
字数 114
阅读 20
收藏 0

用法灵感来源于unity,打算改造cocos


class SGComponent
{
public:
	virtual void update(float delta){};
	virtual void onStart(){}
	virtual void onDestroy(){};
	virtual void onCreate(){};
};

class AudioComponent :public SGComponent
{
public:
};
class RenderComponent :public SGComponent
{
public:
};


class GameObject
{
public:
	template<class T>
	SGComponent* GetComponent()
	{
	return nullptr;
	};

	template<>
	SGComponent* GetComponent<AudioComponent>()
	{
	return this->_audio;
	};

    template<class T>void AddComponent(T * t){};

	template<>void AddComponent(RenderComponent *t)
	{
		if (_render){}
		this->_render = t;
	};

	template<>void  AddComponent(AudioComponent *t)
	{
		if (_audio){}
		this->_audio = t;
	};
private:
	AudioComponent*_audio = nullptr;
	RenderComponent *_render = nullptr;
};




int main(int argc, char *argv[])
{
	_CrtDumpMemoryLeaks();

	GameObject obj;
	cout << obj.GetComponent<RenderComponent>();

	system("pause");
	return 0;
}

 

© 著作权归作者所有

梦想游戏人
粉丝 38
博文 445
码字总数 127977
作品 0
成都
私信 提问
Unity MMORPG游戏开发教程(一)——初识Unity

五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑。本系列文章以C#为介绍语言,基于Unity2017.4.x。 一、环境搭建 我使用的是Unity+VSCode,用的是mac系统,windows的自己搜资料,步骤差不多...

五邑隐侠
03/06
0
0
【Unity3D技术文档翻译】第3.6.2.2篇 光照贴图接缝缝合(Lightmap seam stitching)

上一章:【Unity3D技术文档翻译】第3.6.2.1篇 光照贴图:入门指南 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Lighting】→【Global Illumination】→【P...

何三思
2018/07/28
0
0
【Unity3D技术文档翻译】第3.6.2.1篇 光照贴图:入门指南

上一章:【Unity3D技术文档翻译】第3.6.2篇 渐进式光照贴图(Progressive Lightmapper) 本章原文所在章节:【Unity Manual】→【Graphics】→【Graphics Overview】→【Lighting】→【Globa...

何三思
2018/07/27
0
0
使用Cocos Creator 开发微信小游戏(一)—— 项目配置与环境搭建

项目配置与环境搭建 第一次打开Cocos Creator界面,就感觉,这很Unity啊,虽然有不少地方还没有完善,但是对于开发小游戏这样轻量级的游戏是够用的了,所以用过Unity的同学上手会特别快。这个...

yao_jianlun
2018/05/06
0
0
3D 引擎 Unity 2018.1 正式发布,增添 330 余项改进

流行的游戏开发引擎 Unity 近期获得了重大更新,带来了一系列很酷且惊人的新功能。新版 Unity 2018.1 于 2018 年 5 月 2 日发布,旨在让游戏开发者的生活变得更加轻松,并帮助他们快速制作出...

局长
2018/05/07
2.4K
6

没有更多内容

加载失败,请刷新页面

加载更多

将博客搬至CSDN

https://blog.csdn.net/qq_38157006

Marhal
19分钟前
1
0
unicode Java中求字符串长度length()和codePointCount()的区别

在计算字符串长度时,Java的两种方法length()和codePointCount()一度让我困惑,运行书上例子得到的长度值是相等的,那为什么要设定两个方法呢? 对于普通字符串,这两种方法得到的值是一样的...

泉天下
20分钟前
2
0
uin-app 一、学习理由

选择uni-app 理由 别人的理由 1. 5+ 有HTML5+和Native.js技术,HTML5+包含常用的跨平台的几百个API,能满足常规开发需求,而Native.js把40w原生api映 射成js对象,这样js可以直接调原生。HTM...

轻轻的往前走
21分钟前
1
0
方括号及其在命令行中的不同用法介绍

通配 方括号最简单的用法就是通配。你可能在知道“ Globbing”这个概念之前就已经通过通配来匹配内容了,列出具有相同特征的多个文件就是一个很常见的场景,例如列出所有 JPEG 文件: ls *.j...

Linux就该这么学
27分钟前
2
0
vecty 基础

gopherjs 是把 go 编译为 js 的工具。 vecty 是基于 gopherjs 的一种类似 React 的开发框架。 安装 gopherjs 和 vecty go get -u github.com/gopherjs/gopherjsgo get -u github.com/gopher......

electricface
28分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部