Cocos3d-x 发布第一版
从去年开始11一月,我开始一个又一个人cocos3d的C++改写版本号。现在见效。所有cocos3d的OC代码改写成了C++。 在正常Android和Windows在执行。上周,正式发布了第一个版本。上传GitHub上,喜欢的朋友能够点击链接訪问。
Cocos3d-x基于cocos2d-x 2.x 编写。利用cocos2d的跨平台优势,单独封装了一个3D显示层, 2D,3D互不影响。
引擎效果展示
首先展示下引擎的效果,事实上在我的个人主页上能够看到,这里再给大家分享一下,
1. 带有骨骼动画的人物模型显示:骨骼动画使用cocos3d自身支持的pod格式,本人直接使用。事实上能够增加很多其它的模型格式的支持。这个将在兴许版本号中陆续增加
(图1)
2. Render To Target:能够渲染到2D纹理上也能够渲染到Cubemap上。下图是显示效果
·
(图2)
(图3)
图2中展示了将场景中的奔跑的人物模型实时的渲染到一张2D纹理,而且在电视模型上显示
图3展示了一茶壶为中心的六个方向的场景分别到cubemap的六个面上。
3. 3D 静态mesh的生成与载入显示:与人物模型类似,眼下仅仅支持pod静态模型的显示显示效果例如以下图(图4)
(图4)
4. Billboard:理论上能够将随意的Cocos2d-x中的可显示的Node作为Billboard的显示目标在3D场景中显示,下图(图5)展示了将2D粒子系统实现的太阳作为Billboard显示在3D场景中
(图5)
5. 粒子系统:粒子系统使用的点精灵实现的。利用了gl_Point, 本人还是赞同cocos2d-x的做法。使用矩形纹理做点精灵。这个在兴许版本号中改进吧,临时没有截图。
当然,引擎中不止这些,光照系统,阴影效果都有,这里不做一一介绍,感兴趣的朋友能够下载并执行看一下。
眼下引擎遇到的两个主要问题
1. 部分机型无法显示3D骨骼动画模型。这是因为android的碎片化和引擎自身的shader复杂度过高导致的。这个临时没解决,想到一个解决方式是须要适当的减少模型的显示效果,能够去掉光照。减少骨骼数量
2. 粒子系统部分android上无法正常显示,部分Windows上也会出现。
引擎眼下是我一个人在写,诚邀喜欢3D引擎的技术大神增加共同编写Cocos3d-x引擎。
有意者能够邮件给我michaelgamedev@sina.cn。也能够加我微信:michaelgamedev
最后欢迎大家增加Cocos3D-x技术交流QQ群进行讨论共同进步:140525023
谢谢大家!
祝您工作愉快。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
Cocos3d-x 发布第一版的更多相关文章
- 120项改进:开源超级爬虫Hawk 2.0 重磅发布!
沙漠君在历时半年,修改无数bug,更新一票新功能后,在今天隆重推出最新改进的超级爬虫Hawk 2.0! 啥?你不知道Hawk干吗用的? 这是采集数据的挖掘机,网络猎杀的重狙!半年多以前,沙漠君写了一篇 ...
- 新版markdown功能发布!支持github flavored markdown!
让大家久等了!新版markdown功能一直拖到今天才发布,很是愧疚...但不管怎么样,总算发布了! 今年1月份发布第一版markdown功能之后,很多园友反馈说做得很烂,我们综合大家的反馈之后发现不仅 ...
- Ng-Matero 0.1 发布了!
Ng-Matero 0.1 终于发布了!周末折腾了两天,结果最后发版还是出了点意外,好在今天补了一版. 距离 Ng-Matero 发布第一版已经过去了一个多月,然后很颓废地休息了半个多月,最近项目的关 ...
- Json解析工具的选择
前言 前段时间@寒江不钓同学针对国内Top500和Google Play Top200 Android应用做了全面的分析(具体分析报告见文末的参考资料),其中有涉及到对主流应用使用json框架Gson ...
- [原创]下拉框控件react-native-modal-dropdown更新历程
前言 不知不觉从今年9月发布第一版控件到现在已经快3个月了 过去不断从开源社区索取,一直一直想着有机会一定要回报
- 从“差不多了”到 正式发布 -- 新浪微博WinPhone UWP版诞生记
本文粗略记述了UWP团队从接手新浪微博项目到发布第一版的过程.本文不是技术贴,而是回顾“软件工程周期失控是一种怎样的体验”. 接手新项目:捡了个大便宜 2016年1月份,UWP team开始接手新浪微 ...
- 打造完美的xml技术解决方案(dom4j/xstream)
转: XML 技术是随着 Java 的发展而发展起来的.在 XML 出现之前对于简单的数据格式通常是存储在 ini 配置文件等文本文件中,复杂的格式则采用自定义的文件格式,因此对于每种文件格式都要有专 ...
- 微信事业群WXG成立 致力于打造微信大平台
今天,微信之父张小龙带领微信团队成立微信事业群(WeiXin Group,简称WXG),致力于打造微信大平台,由他们负责微信基础平台.微信开放平台.微信支付拓展.O2O等微信延伸业务的发展,并包括邮箱 ...
- C++ 记事本: 从历史说起
C 的简史 在谈论 C++ 的历史那么必须先得了解 C 的历史,那么我们先来看一段来自于 <<C专家编程>> 对 C 语言史前阶段的简单阐述: Ken Thompson(左), ...
随机推荐
- Linux内核的同步机制---自旋锁
自旋锁的思考:http://bbs.chinaunix.net/thread-2333160-1-1.html 近期在看宋宝华的<设备驱动开发具体解释>第二版.看到自旋锁的部分,有些疑惑. ...
- 集合中Set_List必须覆盖 hashCode()与 equals()
集合中Set_List必须覆盖 hashCode()与 equals() @Override public int hashCode() { System.out.println("==== ...
- Angularjs 基于karma和jasmine的单元测试
目录: 1. 单元测试的配置 2. 实例文件目录解释 3. 测试controller 3.1 测试controller中变量值是否正确 3.2 模拟http请求返回值,测试$http服 ...
- Windows Phone开发(10):常用控件(上)
原文:Windows Phone开发(10):常用控件(上) Windows Phone的控件有几个来源,和传统的桌面应用程序开发或Web开发一样,有默认提供的控件和第三方开者发布的控件.一般而言,如 ...
- [Elasticsearch] 邻近匹配 (三) - 性能,关联单词查询以及Shingles
提高性能 短语和邻近度查询比简单的match查询在性能上更昂贵.match查询仅仅是查看词条是否存在于倒排索引(Inverted Index)中,而match_phrase查询则须要计算和比較多个可能 ...
- iOS Dev (55) 获得本年度、月、日本和其他信息
iOS Dev (55) 获得本年度.月.日本和其他信息 作者:大锐哥 博客:http://prevention.iteye.com - NSDate *now = [NSDate date]; NS ...
- Android学习路径(23)应用Fragment建立动态UI——Fragment之间的通信
为了要重用Fragment的UI组件.你应该为它们每个都构建一个完整独立的,模块化的组件来定义他自身的布局和行为. 一旦你定义了这些可重用的Fragments.你能够通过activity关联它们同一时 ...
- java.nio分析软件包(三)---Charset理解力
前面的分析后,2一个基本的封装类型.现在我们就来揭开Java.nio魔法知识的最后一块,CharsetEncoding类,他的主要功能是实现字节Unicode之间的转换转码. 让我们来看看他同样的封装 ...
- Linux System Programming note 8 ——File and Directory Management
1. The Stat Family #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> ...
- Android含文档server结束(client UI接口异步请求的一部分)三
在本文中,AsyncTask为了实现异步请求,详细代码如下所示的: public class downloadActivity extends Activity { private TextView ...