Cocos2d-x初识
cocos2d-x引擎是什么
在学习游戏的时候就有意的搜索这方面的知识,知道游戏须要游戏引擎,引擎听着非常厉害,只是就是一个游戏框架。
或许某一个游戏框架火起来了,就非常流行了,只是我觉得不论什么游戏引擎对小白来说都是有借鉴意义的。
说起小白了,我给不同知识领域的人起了不同的名字。什么也不知道的叫小白,稍微懂一些的人叫小灰。专业能应用知识的人叫做小黑,呵呵,临时这篇文章是小灰给小白传授知识的。回过头来,cocos2d-x主要还是关注2d程序方面的制作。当然游戏比較有用,只是,你写别的程序是全然能够的。
引擎的部件
我在网络上查阅了不少资料,慢慢的就总结出来了。一个引擎基本的就是四个方面。图形系统,物理系统,网络系统和音频系统,这四个部件就构成了最基本的商业引擎。各种开源的引擎就是专注实现这些部分或者一部分,毕竟没有资金支持,比如我所喜欢的orge就在图形方面很出色,其它的比方网络就有些空白了。那么cocos2d-x都有那些部件呢。这个作为一个略微成熟的流行的引擎四个部件都是有的。依照官网的描写叙述,另一个脚本部件。如图
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveW9uc2hp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
这张图的地址在
支持的平台
基本的就是六个平台,Mac,Windows,Linux,Ios,Andriod,WP,当然还有别的,仅仅只是这六个平台用户最多。所以敲代码关注他们差点儿相同就没有什么问题了。这里就要抱怨一句了。在高端的平台上没有一个是中国的。显示出我们的路还好长的。没有民族的产品啊。前几天有意的查找一些这方面的信息。自主知识产权须要的时间何其多,COS系统却说一两年做出来。有点太吹了。怪不得人人不相信。
文件夹结构
我也没有吹牛的意思。只是是做过微软的项目,再加上有意的打开过各种项目的代码看过,比如cocos2d-x,linux,mysql,log4net等等开源的项目。
事实上没有深入就是研究他们的文件夹组织。一个大一些的项目文件夹究竟是怎么组织的,还不错,没有白费我不分白天黑夜的下载代码,总结出了一点。仅供借鉴,一个项目的文件夹主要分为三部分。第一部分就是本项目的关注。
比如cocos2d-x的。主文件夹就是cocos2d-x.也能够叫做核心的文件夹吧,主要功能就是这个文件文件夹了。
再者就是部件文件夹,非常多项目是有一些可供选择的部件来供用户选择的。比如dxut中的optional,cocos2d-x中的CocosDenshion.再者还有就是项目的扩展了,名字在各种项目里面差点儿都是extension。加不加s倒是小问题了,项目的扩展功能或者部件。
这样子项目的文件夹就完毕了。第二部分就是利用的别的库了。比方你用qt库,opengl库,这些东西放到哪儿呢。就是external,这个在各种项目里面也是差点儿相同。呵呵,第二部分就是这些了。
第三部分就比較详细一些了,主要是小的方面。
比如doc说明文档的文件夹,developer參与开发人员的文件夹,sample入门的样例程序文件夹,license各种库或者协议的利用许可,tools假设项目中利用到这些工具就放到这个文件夹了。
我见过的最大的项目程序20G,文件夹组织和我说的也是类似的
,只是会有一个Public文件夹,一般存放sdk。不知道应该归到哪部分,临时不提。
看了这些那么cocos2d-x的文件夹就会非常快的读懂了,甚至再遇见别的项目的文件夹也能够触类旁通了。我就不说了。
cocos2d-x的语言
我还没到实战的地步,只是也知道,基本的编程语言就是C++了。再者控制脚本语言就是lua和js了,只是创建project的时候用到python。
总结
学习引擎的时候须要关注一个深入点,不是说不了解别的引擎。而是广泛的查阅以后,最后选择一个你觉得比較好的去研究。
研究一个以后你甚至能够自己写一个,哪个都是后话了。
这篇博客主要是关注cocos2d-x的讨论,没有什么实质的内容,只是讨论的越多才会越深入,了解的才会越多。
Cocos2d-x初识的更多相关文章
- 【Cocos2D研究院之游戏开发】
http://www.xuanyusong.com/archives/category/ios/cocos2d_game 分类目录归档:[Cocos2D研究院之游戏开发] 201211-19 Co ...
- Cocos2d-x v3.1 初识(一)
Cocos2d-x v3.1 初识(一) Cocos2d-x从以前苹果平台上的Cocos2d发展而来,版本已经更新到了3.1.1.作为一个跨平台的游戏开发引擎,现在已经被上百个国家在使用,这也是国人的 ...
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 初识Hadoop
第一部分: 初识Hadoop 一. 谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- 初识IOS,Label控件的应用。
初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...
- UI篇(初识君面)
我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- 初识SpringMvc
初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
随机推荐
- 一个Work Stealing Pool线程池的实现
一.一般来说实现一个线程池主要包括以下几个组成部分: 1)线程管理器 :用于创建并管理线程池 . 2)工作线程 :线程池中实际执行任务的线程 . 在初始化线程时会预先创建好固定数目的线程在池中 ,这些 ...
- 【转】基于 Apache 在本地配置多个虚拟主机
如何使用 Apache 在本地配置出多个虚拟主机呢?而且使用不同的“域名”来访问本地不同的站点呢? 一般情况下,咱们都使用 localhost 来访问本机上的服务器,在我们的 C:/WINDOWS/s ...
- Python的深浅copy
27.简述Python的深浅拷贝以及应用场景? 深浅拷贝的原理 深浅拷贝用法来自copy模块. 导入模块:import copy 浅拷贝:copy.copy 深拷贝:copy.deepcopy 字面理 ...
- javascript学习笔记 - 引用类型 基本包装类型
六 基本包装类型 Boolean,Number,String 这三个引用类型亦称为基本包装类型,与基本的数据类型boolean,number,string相关联.为了方便操作这些基本类型的数据. 引用 ...
- PTA 11-散列2 Hashing (25分)
题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/679 5-17 Hashing (25分) The task of this pro ...
- Python 数据库到处到Excel
import MySQLdb import xlwt def outMySQL(file_name): wb = xlwt.Workbook() sh = wb.add_sheet('sheet 1' ...
- Gcd(bzoj 2818)
Description 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. Input 一个整数N Output 如题 Sample Input 4 Sam ...
- 在vue-cli环境下模拟数据接口及如何应用mockjs
第一种办法 1.需要先准备json文件 在根目录下新建个oapi文件夹下新建个iorder.json文件将需要遍历的json数据沾里面. 2.在build文件夹下新建dev-server.js 文件 ...
- 算法 & 数据结构——任意多边形填充
需求 . 在计算机中,选区是一个很常见的功能,例如windows按住鼠标左键拖动划出矩形选区,Photshop通过钢笔工具任意形状选区.选区本身不过是通过线段闭合的一个几何形状,但是如何填充这个选区, ...
- Linux 之 LNMP服务器搭建-Nginx
LNMP服务器搭建-Nginx 参考教程:[千峰教育] 系统版本: CentOS 6.8 关闭防火墙和Selinux service iptables stop setenforce 安装Nginx ...