
3D
文章平均质量分 80
kakashi8841
爱好编程,喜欢游戏。游戏全栈开发。
展开
-
和你关系不好的U3D主程不愿意被你知道的性能优化知识
这周20:00会在优快云做一个关于Unity3D性能优化的分享。主要介绍一本系统讲解在Unity3D中进行性能优化的书,并且以现实项目为例,讲解如何利用本书进行性能优化。原创 2020-06-04 22:16:21 · 1000 阅读 · 1 评论 -
Uni2D 入门 -- Atlas
我为什么应该使用Texture Atlas?使用Atlas是一个普遍的好做法,而且它有很多好处。当有某些需要在屏幕渲染的时候,它背后带来的是draw call。由于不同的原因(例如渲染状态改变),一个draw call是一个很慢的操作,因此我们需要保持较低的draw call来保证较高的帧率。在移动设备上,接近30-40个draw call就开始变得危险了翻译 2013-12-27 01:37:26 · 8995 阅读 · 1 评论 -
Uni2D 入门
Uni2D增加了一些新的便利的特性给Unity,它们用于推动你2D工作流程和生产力。最有用的一个特性是sprite的创建:使用Uni2D,你能创建通过从项目窗口拖动texture来闪电创建sprite或者物理sprite。这个部分将向你展示怎样设置Uni2D以及插件主要特性与原理。Sprite?2D物理?帧动画?2D骨骼动画?翻译 2013-12-26 16:57:40 · 20820 阅读 · 1 评论 -
Uni2D —— 入门(全)
Uni2D 入门Uni2D 入门 -- AtlasUni2D 入门 -- Animation Clip 和 Animation APIUni2D 入门 -- Skeletal AnimationUni2D 入门 -- Asset Table原创 2014-01-02 18:20:23 · 7287 阅读 · 1 评论 -
Uni2D 入门 -- Skeletal Animation
Uni2D V2.0 引进了一个新的skinning 特性:由于内置骨骼动画编辑器你现在能增加骨头到你的sprite并立刻让他们动画。为了这样做,你的sprite只需要几步设置,通过posing 模式就可以达成翻译 2013-12-30 22:52:00 · 11660 阅读 · 0 评论 -
Uni2D 入门 -- Asset Table
Uni2D资源表格(Asset Table)与资源自动更新翻译 2013-12-31 23:05:13 · 5485 阅读 · 0 评论 -
Uni2D 入门 -- Animation Clip 和 Animation API
一个animation clip是可重用的帧集合,它以给定的帧率显示sprite。每一帧包含的texture和可选事件。Uni2D除了提供可视化来处理精灵动画,还提供了强大的API使得控制和监听动画。具体看看...翻译 2013-12-27 16:58:50 · 19408 阅读 · 0 评论 -
手把手教你搭建jME2(jMonkeyEngine2)环境【有图有真相】
本文以搭建jME2.0.1_Stable为例:1、下载jME类库jME2.0.1_Stable下载地址:http://code.google.com/p/jmonkeyengine/downloads/detail?name=jME2_0_1-Stable.zip&can=2&q=下载完了解压后,发现有3个文件夹:junit、lib、srcjunit——使用junit编写的对jME的测试类源码lib——就是我们想要的类库src——中有jME的源码和jME的演示类源码2、在Eclipse建一个属于自己的类库打原创 2010-11-07 19:23:00 · 16206 阅读 · 8 评论 -
jMonkeyEngine之Camera全攻略
昨天弄Camera,本来还以为不难,谁知道却被这个问题困扰了一个晚上。不知怎么地,早上突然一个猜想,然后测试,通过!因此写下本文,供大家一起学习交流。本文所用图片都是本人亲手PS的,所以转载文章、图片请注明出处。谢谢!想自定义jMonkeyEngine中的Camera一般需要做2件事:1、 设置摄像机视锥(ViewFrustum)的大小2、 设置摄像机的位置和朝向设置视锥(ViewFrustum)一般有以下2个方法:setFrustum(float near, float far, float left原创 2010-11-04 19:29:00 · 8429 阅读 · 9 评论 -
记录一次帮策划写的基于VBA的数据转化工具
由于策划计算的表格结构和程序实际使用的数据表结构不一定一致,因此有时候经常需要做数据转化。把策划自己的表格转成程序需要的格式,然后再导入数据库。这次也是策划有个表,里面有多个字段分别表示多个属性,但是程序考虑到通用,不想一个属性增加一个字段,因此想用一个字段,然后采用JSON格式来表示所有属性。因此,帮策划写了个VBA实现多个字段合并成JSON的。这个VBA可以通过Ctrl表格来配置:源表原创 2014-07-27 20:37:27 · 4695 阅读 · 0 评论 -
手游开发攻防——二、基础篇(更新完)
通过一个官方demo来分析Unity项目中的一些知识点和应用。原创 2014-09-21 16:51:30 · 20322 阅读 · 11 评论 -
Unity 实战(第二版) —— 勘误
由于各位网友的大力支持,之前的Unity5一书第一版大卖。现在第二版增加了一些新的内容,也获得业界几位大佬的推荐序。有兴趣的同学可以自行在京东购买哦。如果有同学发现书中错误,而且本帖子尚未收录的。可以将错误发送到我邮箱john.cha@qq.com。我会在本帖子追加勘误信息和反馈同学的信息(不希望被公开可以邮件说明),并且我会送你一罐冰阔落以示感谢。另外,另一本关于Unity3D 性能...原创 2019-03-20 21:33:44 · 1954 阅读 · 1 评论 -
《Unity5实战》一书的勘误
本文主要用于做《Unity 5实战》一书第一版的勘误收集。大家有发现问题可以通过以下方式联系我:1、在本博文回复中说明。我会不定期上来修正问题。2、发邮件到john.cha@qq.com3、加入群552599149谢谢支持与理解。1、第五章代码清单5.7中的ShuffleArray方法:书中错误代码:private int[] ShuffleArray(int[] numbers) { int原创 2016-08-09 14:29:51 · 4563 阅读 · 2 评论 -
VR预览
VR预览Unity VR使得开发者能直接从Unity中以VR设备为发布目标,而不需要在项目中使用任何额外的插件。它提供了兼容多种设备的基础API和特性集。它已经被设计于对外来设备和软件提供向前兼容性。VR API表面上进行了很小的设计,但它将会随着VR的发展而增强。 通过使用Unity中原生的VR支持,你可以获得:对每个VR设备的稳定版本使用单一的API接口和不同的VR设备交互不需要针对每种设翻译 2016-11-03 21:22:35 · 3901 阅读 · 0 评论 -
Unity3D VR(Virtual Reality, 虚拟现实)
VR(虚拟现实)是一个快速发展的领域。这部分描述如何设置以及在Unity中使用虚拟现实硬件。Unity当前对Oculus,OpenVR,PlayStation VR和Gear VR提供了原生支持。相关向导:虚拟现实搜索Unity Knowledge Base以获取更多关于虚拟现实的提示,技巧和问题方法。目录VR预览VR参考VR设备VR音频声场定位技术翻译 2016-10-31 21:09:46 · 5544 阅读 · 0 评论 -
我翻译的Unity3D书籍出版啦(编程向)
我翻译的Unity3D书籍终于出版啦。特点:1、针对Unity52、如何使用Unity3D编辑器只是简略带过3、重点讲如何在Unity3D中编写质量更高的代码4、以游戏实例引导你开发游戏5、各种图片、音频资源格式的特点和针对平台的一些优化与选择书的目录可以在亚马逊看到。点击这里。下面放出封面。大家看完有啥问题的都可以在这里或者发邮件到john.cha@qq.com与我交流哦。原创 2016-06-22 17:02:24 · 43426 阅读 · 31 评论 -
在Unity3D中实现高效的战斗飘字
这周有网友提到用NGUI做战斗冒血,冒伤害等文字性能太差。确实如此,我之前(NGUI 3.8.2,1000块的Android机器上)在Profile中也发现UIPanel占用CPU奇高。因此最终自己在战斗飘文字这一块没有使用NGUI,而是自己创建Mesh来处理。优化前后在手机上每秒大概增加了10帧。先看一下效果。可以看到DrawCall和NGUI一样都为1。这个 MeshText 就是我自己写的H原创 2016-01-27 19:18:28 · 19751 阅读 · 1 评论 -
[Shader]NGUI与灰化
1、灰化的需求很多時候,我们做游戏会遇到一种情况。比如一个技能图标,可以点的时候是正常的颜色,不能点的时候是灰色的。又比如一个功能,开放的时候是正常颜色,没开放的时候是灰色的。更常见的就是,比如你的QQ好友,不在线头像也会变成灰色的。那么,上述种种情况就出现了一种需求,把一个图片变成灰色的。2、说说灰化与灰度首先,你不能说让美术出两套图,一套彩色一套灰色的吧。这样会增加资源占用。那么我们只能想办法原创 2015-05-04 12:05:20 · 10856 阅读 · 3 评论 -
手游开发攻防——二、基础篇
《手游开发攻防——二、基础篇》已经更新完。主要是通过一个官方的DEMO,来分析Unity3D开发中的一些知识点和应用、注意的事项。大家可以去看看。有什么的可以提出来交流。http://blog.youkuaiyun.com/kakashi8841/article/details/39451739原创 2014-11-09 01:09:02 · 6148 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush10(1)——墙壁检测系统(Detection System)
<br />注:本系列教程全部翻译完之后可能会以PDF的形式发布。<br />如果有什么错误可以到http://blog.youkuaiyun.com/kakashi8841留言或EMAIL:kakashi9bi@gmail.com给我。<br /> <br />jME版本:jME_2.0.1_Stable<br />开发工具:MyEclipse8.5<br />操作系统:Window7/Vista<br /><br /> <br /> <br /> <br /> 10、夺取Flag10.1、介绍<br />翻译 2010-11-04 12:02:00 · 2492 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush10(2)——墙壁检测系统(Detection System)
10.6、Lesson10.java<br /> <br />import java.io.IOException;<br />import java.net.URL;<br />import java.util.HashMap;<br /> <br />import javax.swing.ImageIcon;<br /> <br /> <br />import com.jme.app.BaseGame;<br />import com.jme.bounding.BoundingBox;<br />imp翻译 2010-11-04 12:08:00 · 2292 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush9(2)——墙壁检测系统(Detection System)
<br />注:本系列教程全部翻译完之后可能会以PDF的形式发布。<br />如果有什么错误可以到http://blog.youkuaiyun.com/kakashi8841留言或EMAIL:kakashi9bi@gmail.com给我。<br /> <br />jME版本:jME_2.0.1_Stable<br />开发工具:MyEclipse8.5<br />操作系统:Window7/Vista<br /><br /><br /><br /><br /><br />9.5、Lesson9.java<br /> <b翻译 2010-11-02 19:38:00 · 2475 阅读 · 0 评论 -
未来3D显示技术
<br />http://v.youku.com/v_show/id_XMjE1MDc4OTgw.html<br />http://player.youku.com/player.php/sid/XMjE1MDc4OTgw/v.swf<br /> <br /> <br />转载 2010-10-26 14:13:00 · 1413 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush6(1)——控制交通工具
可能是季节更换,最近老有点困。期望赶快度过这个时期。注:本系列教程全部翻译完之后可能会以PDF的形式发布。如果有什么错误可以留言或EMAIL:kakashi9bi@gmail.com给我。jME版本:jME_2.0.1_Stable开发工具:MyEclipse8.5操作系统:Window7/Vista控制交通工具6.1、介绍这节课我们将改善我们上一次的控制模式。由于我们正驾驶一辆交通工具,我们假设它遵循物理定律,它不应不经加速就移动,或者突然就停下来。为了做到这个,我们增加一些模仿物理的东西。这将需要一个类翻译 2010-10-25 18:42:00 · 2966 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush5(2)——跟随的摄像机(ChaseCamera)
5.4、让我们增加玩家对于这个向导,我们将只是使用一个占位符代替交通工具。我们将在之后载入模型,但那只是没价值的工作,我们想要先让游戏的核心能运作。一个Box是一个好的占位符,因为它是我们交通工具的基础模型。 所以,让我们先增加一个buildPlayer的方法并在initGame中调用它。我们将接着创建一个box做为玩家的几何体并把这个Box attach到node。这个玩家Node将会是一个类变量,以便我们能在update期间访问它。我将创建一个中心为(0,0,0)和大小为(0.35,0翻译 2010-10-24 19:18:00 · 3274 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush5(1)——跟随的摄像机(ChaseCamera)
花了一个小时研究了CullState,发现以前没学线性代数真是个错误。唉!不过这也和学校教育制度有关吧,如果学校能以2个方向培养人才:先理论后应用,先应用后理论,学生选择适合自己的方向这样多好!话不多说,下面为译文。注:本系列教程全部翻译完之后可能会以PDF的形式发布。如果有什么错误可以留言或EMAIL:kakashi9bi@gmail.com给我。jME版本:jME_2.0.1_Stable开发工具:MyEclipse8.5操作系统:Window7/Vista5、增加一个跟随摄像机(Chase Camer翻译 2010-10-24 19:09:00 · 2572 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush3——创建地形
这个向导中我们涉及到一些好玩的,我们将为我们的游戏加载地形(下文将使用Terrain代替)。这里对于我想要的类型的terrain有一些要求:l 每次随机l 不需太多三角形l 为了跳跃“崎岖”l 对于快速的交通工具足够大我们将在第二课中的框架上构建。首先,由清除Sphere渲染代码开始。我们不再需要这个例子。你现在应该有相当干净的框架用于工作。现在,我们将创建的地形会相当大。所以我想改变Camera的位置保证地形在视野里面。因此,在initSystem中作出如下改变: Vector3f l翻译 2010-10-22 12:05:00 · 2784 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush5(3)——跟随的摄像机(ChaseCamera)
5.7、源码import java.util.HashMap;import javax.swing.ImageIcon;import com.jme.app.BaseGame;import com.jme.bounding.BoundingBox;import com.jme.image.Texture;import com.jme.input.ChaseCamera;import com.jme.input.InputHandler;import com.jme.input.KeyBindingManag翻译 2010-10-24 19:21:00 · 2571 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush4——创建环境
既然我们已经有了terrain(或者说是我们即将交互的真实平面),我们需要其他“没用”的对象去让它看起来像个足够大的世界包围着我们。因为地形是有限的,我们需要一些方法去保持玩家包含在我们狭小的空间内,而且是以一种合理的方式。所以,这个向导,我们将创建一个力场(Force-Field)舞台(Fence),那定义了游戏的区域。可能我们的玩家是被监禁的,然后被迫为腐败的典狱长提供消遣?这将创建一个感觉,那就是我们永远也不能超出那个terrain的原因。再者,我们想让它看起来像是在Fence外有个世界。我们将使用S翻译 2010-10-24 00:03:00 · 2738 阅读 · 1 评论 -
jMonkeyEngine译文 FlagRush2——从你的应用程序中移除SimpleGame
这个向导中,我们将为Flag Rush构建基础。我们将通过自己实现继承BaseGame。我们将使用BaseGame做为父类,但之后可能改为其它的游戏类型,因为BaseGame简单地尽可能快地进行update和render。我们或许不必或不想使用这种类型的循环。然而,现在BaseGame是一个循环无关的类。在以后,改变BaseGame将不是重点,因为只是传入update和render方法的值不同而已。我们将开始创建一个继承自BaseGame的新类。你会注意到有6个需要实现的方法:update、render、i翻译 2010-10-21 18:53:00 · 2361 阅读 · 0 评论 -
比Vista更震撼!真正3D桌面物理技术亮相
<br />http://v.youku.com/v_show/id_XMjk5NzQ4MA==.html<br />http://player.youku.com/player.php/sid/XMjk5NzQ4MA==/v.swf<br /> <br />转载 2010-10-26 14:15:00 · 1572 阅读 · 1 评论 -
不用带眼镜 东芝裸眼3D电视9个角度随便看
<br />http://v.youku.com/v_show/id_XMjA1MTc0NTc2.html<br />http://player.youku.com/player.php/sid/XMjA1MTc0NTc2/v.swf<br /> <br />转载 2010-10-26 14:16:00 · 2274 阅读 · 1 评论 -
jMonkeyEngine译文 FlagRush9(1)——墙壁检测系统(Detection System)
<br />注:本系列教程全部翻译完之后可能会以PDF的形式发布。<br />如果有什么错误可以到http://blog.youkuaiyun.com/kakashi8841留言或EMAIL:kakashi9bi@gmail.com给我。<br /> <br />jME版本:jME_2.0.1_Stable<br />开发工具:MyEclipse8.5<br />开发环境:Window7/Vista<br /><br /> <br /> <br /> 9.1、介绍<br />在这个向导中,我们将通过冲突检测(Colli翻译 2010-11-02 19:31:00 · 2743 阅读 · 1 评论 -
jMonkeyEngine译文 FlagRush8(2)——增加随机的Flag
8.6、为旗杆增加布<br /> 我想要让Flag看起来像…很好,像Flag。为了这么做,我们需要模拟一个布的Flag,attach到旗杆。有什么更好的方式完成这件事,还是使用jME的ClothPatch功能。这将允许我们去创建一个弹簧(spring)点的matrix,它们由不同方向的外力(force)调整(引力和风力)。我已经为这个向导创建了我自己的风力,而我们将在下面讨论。<br /> <br /> 首先,增加对象到Flag类。<br /> <br /> //用于制作Flag的C翻译 2010-10-31 18:45:00 · 2486 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush8(1)——增加随机的Flag
<br />FlagRush系列教程快完了~~今天正在看第9篇,现在先发第八篇吧。<br /> <br /> <br /> <br />注:本系列教程全部翻译完之后可能会以PDF的形式发布。<br />如果有什么错误可以到http://blog.youkuaiyun.com/kakashi8841留言或EMAIL:kakashi9bi@gmail.com给我。<br /> <br />jME版本:jME_2.0.1_Stable<br />开发工具:MyEclipse8.5<br />操作系统:Window7/Vist翻译 2010-10-31 18:38:00 · 2374 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush系列 汇总(10篇更新完毕)
这个系列你将通过创建一个简单(然而充满游戏特性)的游戏从而向你介绍jME图形引擎。这个游戏将简单的开始与结束,它增加了jME提供的大多特性。这个系列的向导基于DarkBASIC的Limit Rush 系列向导。 游戏玩法很简单。你控制着太空船(其实本文中是辆未来主义的bike),平面上随机出现“旗帜”。第一辆到达旗帜的太空船将获得一个分数。在旗帜被获取后,它又随机出现。这样不断出现,直到时间到了或达到设置的分数。游戏元素将随着向导前进被添加进来,以便于介绍其它效果。本帖为jMonkey原创 2010-10-31 19:43:00 · 12014 阅读 · 13 评论 -
jMonkeyEngine译文 FlagRush7(2)——拥抱大地让我们驾驶的不再是Box
<br /> <br />唉,最近有点忙,忘记写Blog咯,喜欢jME的支持。<br /> <br /> <br /> <br /> 7.6、源码<br /> <br />import java.io.BufferedInputStream;<br />import java.io.ByteArrayInputStream;<br />import java.io.ByteArrayOutputStream;<br />import java.io.IOException;<br />import java翻译 2010-10-30 20:19:00 · 2365 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush7(1)——拥抱大地让我们驾驶的不再是Box
迄今为止,我们拥有一个带驾驶参数的box。允许我们创建不同性能类型的vehicle。box在地形上表现得很好。我们开始看一些新的。我们开始获得一些玩游戏所必需的基础。所以,让我们花这一节课来让游戏中的事物变得好看点。是时候增加一些炫的啦。我们将让terrain看起来更真实,用一辆酷的未来主义vehicle代替box,而且让这个酷的未来主义vehicle跟随terrain得更好。让我们开始!7.1、优化 就像之前的向导提到的一样,我们的action正在做一些相同的事,并重复很多代码。此刻,我们翻译 2010-10-30 20:15:00 · 3116 阅读 · 0 评论 -
LG谷歌联手开发——裸眼3D技术呈现
<br />LG谷歌联手开发——裸眼3D技术呈现<br />http://v.youku.com/v_show/id_XMjExNTI0Njc2.html<br />http://player.youku.com/player.php/sid/XMjExNTI0Njc2/v.swf<br /> <br /><embed src="http://player.youku.com/player.php/sid/XMjExNTI0Njc2/v.swf" quality="high" width="480" hei转载 2010-10-26 14:12:00 · 1817 阅读 · 0 评论 -
jMonkeyEngine译文 FlagRush6(2)——控制交通工具
天气有点冷,早上竟然出奇般的七点多就起床了,呵呵~~ 6.4、Actions 在第五课,我们创建一个InputHandler,它调用了4个分开的InputAction:KeyNodeForwardAction,KeyNodeBackwardAction,KeyTurnLeftAction,KeyTurnRightAction。我们现在将编写我们自定义的Action去使用新的Vehicle类。 首先,我们想用一个加速vehicle的action替换KeyNodeForwardA翻译 2010-10-28 08:09:00 · 2569 阅读 · 0 评论