- 博客(46)
- 资源 (4)
- 收藏
- 关注
原创 Mac下导出protobuf协议到c#文件
本来以为在mac上导出protobuf会很麻烦,查了一下资料,发现都是几分钟的事。相关的工具都可以在protogen找到。加上一个批处理shell脚本#!/bin/shfilelist=`ls /Users/x/Documents/Proto/protogen-master/test/*.proto`for file in $filelistdoecho $filemon
2016-05-23 15:33:56
4666
原创 Unity3d的文件读写笔记
在开发中遇到了一个小问题,就是在将一些json或者其他字符串写入到文件时 在android机器上会出现 IOException: Sharing violation的问题。问题在于 StreamWriter不能直接生成,应该依赖于FileStream,否则会出现文件写入权限的问题。正确的写法应该如下:FileStream aFile = new FileStream(@"c:\1
2015-04-02 17:17:34
1036
转载 总结使用Unity 3D优化游戏运行性能的经验
转自:http://www.gameres.com/msg_221889.html游戏程序平台类型:iOS 程序设计: 编程语言: 引擎/SDK:Unity3D/2D 作者:Amir Fasshihi
2015-01-30 14:39:34
1393
转载 [燕良] 使用Unity3D的50个技巧:Unity3D最佳实践
这篇文章是转载的,不知道对大家有没有用~~刚开始学习unity3D时间不长,在看各种资料。除了官方的手册以外,其他人的经验也是非常有益的。偶尔看到老外这篇文章,觉得还不错,于是翻译过来和大家共享。原文地址:http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/,下面是译文。欢迎转载
2014-11-19 10:46:12
2130
转载 Unity3D如何通过CombineChildren和MeshCombineUtility优化场景
Unity3D如何通过CombineChildren和MeshCombineUtility优化场景?首先解释下联结的原理和意思:文档里说,显卡对于一个含100个面片的物体的和含1500个面片的物体的渲染消耗几乎是等价的。所以如果你有N个同一材质的东西,那么把他们联成同一个物体再统一用一个material那么对于显卡的渲染消耗就要降低N倍。方法一:1是直接在max等工具里联结好,贴上
2014-08-11 18:00:14
3859
转载 Unity3D 移动开发代码优化
Unity3D 移动开发代码优化1. 尽量避免每帧处理比如:function Update() { DoSomeThing(); }可改为每5帧处理一次:function Update() { if(Time.frameCount % 5 == 0) { DoSomeThing(); } }
2014-08-07 09:55:55
1207
原创 Unity3d的IOS平台打包的品质控制
public static void SetGameQuality(){#if UNITY_IOS iPhoneGeneration iOSGen = iPhone.generation; if(Debug.isDebugBuild){ Debug.Log("iPhone.generation : " + iPhone.ge
2014-08-01 19:17:30
7029
翻译 Unity3d的内存不足引起崩溃的几种原因
At some points a game may crash with "out of memory" though it in theory it should fit in fine. When this happens compare your normal game memory footprint and the allocated memory size when the crash
2014-08-01 14:35:44
14182
原创 C#里分割字符串的一个方法
using UnityEngine;using System.Collections;using System.Collections.Generic;public class StringExtention { public static string[] SplitWithString(string sourceString, string splitString){
2014-07-15 16:32:25
3845
转载 Unity3d开发中美术资源的优化
美术资源的使用会对游戏的性能造成很大影响,下面列出了一些需要注意的地方,以供参考。σ〉模型顶点的数量会影响GPU的性能。通常,在手机平台上,模型的顶点数量控制在lOθ,00θ个以内为佳。在PC平台上,模型的顶点数量可控制在几百万个以内。(2)碱少模型UV接缝和硬边的数量。(3〉场景中模型的数量会影响到CPU的性能,所以要尽可能减少场景中的模型数量,或将使用相同MateH
2014-07-10 14:23:57
7944
转载 猫都能学会的Unity3D Shader入门指南(二)
猫都能学会的Unity3D Shader入门指南(二)关于本系列这是Unity3D Shader入门指南系列的第二篇,本系列面向的对象是新接触Shader开发的Unity3D使用者,因为我本身自己也是Shader初学者,因此可能会存在错误或者疏漏,如果您在Shader开发上有所心得,很欢迎并恳请您指出文中纰漏,我会尽快改正。在之前的开篇中介绍了一些Shader的基本知识,包括S
2014-05-17 17:01:09
31025
转载 猫都能学会的Unity3D Shader入门指南(一)
动机自己使用Unity3D也有一段时间了,但是很多时候是流于表面,更多地是把这个引擎简单地用作脚本控制,而对更深入一些的层次几乎没有了解。虽然说Unity引擎设计的初衷就是创建简单的不需要开发者操心的谁都能用的3D引擎,但是只是肤浅的使用,可能是无法达到随心所欲的境地的,因此,这种状况必须改变!从哪里开始呢,貌似有句话叫做会写Shader的都是高手,于是,想大概看看从Shader开始能不能
2014-05-17 16:11:34
21492
2
转载 关于Unity3D中Resources动态加载NGUI图片的方法!!!
在NGUI中有些图片我需要动态进行变更或者加载,怎么办?首先在项目中创建一个Resources目录,接着把需要的图片放在这里面,可以有子文件夹么?当然可以,文件结构很重要哦~NGUI加载图片的方法其实是加载NGUI生成的atlas,大家可以看看NGUI的图集文件(一个material、一个prefab,一张图集),我们要做的就是动态加载这个prefab(它有UIAtlas属性)
2014-03-17 20:27:42
7615
原创 小白unity3D--更换天空盒
1,创建一个材质 修改shader为 RenderFX/Skybox 修改其中的6张图2,在Edit->Render setting里 在inspector面板中 更改skybox material 将自定义的天空盒材质赋给他
2014-03-14 11:58:06
6382
原创 游戏策划的excel配置表转成json文件(二)
使用python工具将excel生成的json文件,可以用在很多语言里,比如objective-c, C++,lua,javascript等等,来为游戏关卡配置数据。如果是选择的lua语言,这个json文件还不能直接使用。因为json文件里只是json格式的字符串,需要先转换成lua里的数据格式:table。将json文件转成table,需要利用第三方类库CJSON,代码如下:func
2013-08-19 14:21:47
7431
原创 游戏策划的excel配置表转成json文件(一)
游戏客户端里一般无法读取策划写的excel配置表,需要先转成可以用的格式,例如json,xml格式。我用到的工具是python脚本,python脚本的强大就在这不提啦,各种牛X的成熟库。。。执行脚本如下: import osimport sysimport codecsimport jsonfrom xlrd import open_workbook# ""# ""def
2013-08-19 14:07:07
9014
1
原创 lua 封装成C++风格的类
编写lua代码时全用函数非常不好管理项目,在网上找到的一个C++风格的封装类,mark一下。 首先是baseClass:local function parseName(str) local _begin, _end, cls = assert(str:find('%s*([a-zA-Z][a-zA-Z0-9_]*)%s*%:?')) if not str:find(':', _e
2013-08-19 13:51:43
1392
原创 cocos2d-x+lua+cocosbuilder+luaproxy开发中遇到的读取子node以及事件绑定问题
在用luaproxy开发时,会操作node里的menuItem,controlbutton,并实现在lua里实现其对应的selector。遇到的问题如下一,通过node名字读取子node的问题建立一个cocos2d-x工程,把luaproxy源码加进去,在lua里加载ccbi文件,原作者给的例子是local tempProxy = CCBProxy:create() l
2013-05-21 13:36:52
4667
原创 cocos2d-x2.1 + cocosbuilder3.0 的自动生成C++类的修改
cocosbuilder的ccb文件对应的c++类可以用自动生成c++代码的方式实现快速开发。不过作者写的针对cocos2d-x2.1 + cocosbuilder3.0稍微有点问题,都是cocos2d-x的版本更新太快,修改太大的问题。新版的ccb类bind的方法参考点击打开链接需要把codeGen稍微改了下就OK了,代码如下://// CodeGen.h// cocos2dCo
2013-05-16 13:22:17
1148
原创 Unity3D里实现物体移动到目标点,并且摄像机跟着移动的简单方案
初学Unity3D,老大给出个这样的题:当鼠标点击某个位置时,物体将会平滑的移动到此点,并且摄像机会跟随物体运动,自己的实现:。C#代码如下:其中public Camera cam指定为Main Camerafloat speed = 1.0f; RaycastHit hit = new RaycastHit(); Vector3 velocity; Vector3 startPos
2013-04-23 16:43:55
10197
原创 UIImageView设置圆角时产生UI不流畅的解决方案
在做一个NavigationController push 子页面时,发现push和pop时很卡,研究了一大阵子后,发现在子页面里影响UI流畅的只有UIImageView的圆角设置;然后我就关闭了圆角,重新运行果然流畅多了。但是产品的需求必须加圆角,没办法,去stackoverflow找方案,发现方法都大同小异,只不过是绘制上做一些优化。后来查看layer的头文件,最后找到了一个牛B的属性:/*
2013-03-29 16:59:07
5125
原创 IOS里人性化的时间显示
有时候在项目对时间的显示可能需要比较友好一点,IOS本身的NSDate用着不是太爽,处理Date时那是真的头大,下面是混合C的一套写法:(NSString *)friendlyTime:(NSString *)datetime{ time_t current_time = time(NULL); static NSDateFormatter *dateFormatt
2013-03-06 14:58:19
2706
原创 滤镜中对图片的饱和度处理
static inline uint8_t clamp(uint8_t a, uint8_t b) { int16_t newval = (int32_t) a - b; if (newval > 255) return 255; if (newval return 0; return newval;}void saturation(uin
2012-12-14 14:36:47
1031
原创 IOS写文件时需要注意得小地方
系统版本为ios 6.0下:如果碰到写文件不成功的情况,可能会是以下问题引起的+(NSString*)writeData:(id)data InFile:(NSString*)fileName{if (data == nil) {return nil;}NSString *filePath = [[Utilities documentPath] stringByAppe
2012-10-23 17:26:26
771
原创 IOS中自定义字体的粗体实现
加载自定义字体的方法网上很多,大概就是先把xx.ttf 或者xx.ttc等格式的字体文件导入xcode ,在info.plist里配置一下:添加key:Fonts provided by application 并将其赋值为xx.ttf;然后遍历一下UIFont的familyNames 找到你需要的对应的fontName。自定义的字体弄好后,有时候需要用这个font的粗体。系统只提供了bold
2012-10-19 13:47:55
7756
转载 创业团队的九死一生
【创业的九死一生】 1. 只想不做 -- 死;⒉ 没有团队 -- 死;⒊ 坐等投资 -- 死;⒋ Me too 跟风 -- 死;⒌ 没有客户 -- 死;⒍ 入不敷出-- 死;⒎ 惧怕竞争 -- 死;⒏ 团队不和 -- 死;⒐ 自我满足 -- 死;10. 用户喜欢 -- 生!
2012-09-12 10:29:57
975
原创 陌陌 VS 街旁
先说用户量 陌陌到现在应该一年左右,用户量达到了1000万;街旁差不多2年半了,用户量也就是几百万用户。产品方面两者都是基于地理位置的移动社交应用。陌陌重点突出的是人与人之间便捷的和及时的联系,可以语音,信息,图片,地图位置。跟path正好相反,它反而是为陌生人之间搭建了一个沟通的平台,而path却只能熟人之间交流。有人说,它是一个“约炮神器”,“419的平台”。如果你玩过陌陌,就
2012-09-10 11:36:00
1499
转载 一位“美工”对自己工作的描述(转自cocoachina)
PS:最为程序猿,我觉得吧,喊设计师为“美工”,就是方便,天天喊“视觉设计师”,我都起鸡皮疙瘩。可能设计师自己觉得那样叫有范儿?就像程序猿喜欢别人喊自己 高级工程师,高级架构师一样。不过摘此文的目的是为以后自己当老板了,面试“美工”时做准备。这位设计师对产品的设计还蛮有见解的。下面时全文:我不是美工。。。请叫我UI设计师。。。。 偶是最近才上
2012-09-06 14:23:37
3581
转载 关于马化腾的故事(转自知乎)
注:这是腾讯某创业元老离开腾讯独立创业后给他自己公司员工写的内部邮件,披露了腾讯的一些细节,时间有些早了。转摘此文,更多是给一些参考。本文字纯属虚构,如有雷同,算我抄你。各位兄弟:我在腾讯整整工作了6年。如果我能活到60岁的话,就有1/10的生命是投入到一个“初创公司到上市公司”的过程里的。这不是随便说说,6年的时间,意味着我知道很多你们不知道的事情: 1、腾讯98年10
2012-08-17 13:38:42
2804
原创 iOS中创建一个NSManagedObject的流程
一个managedobject是由一个objectContext来管理,有时候创建的managedobject如果不正确,在通过context存取数据时会出现一些无厘头的错误。managedobject里一般只能包含基本的数据类型,例如:integer16,integer32,integer64,float,double,string,date,boolen,binary data等;也可
2012-07-25 11:07:06
5747
原创 常用的数据统计工具
flurryhttp://flurry.comgoogle analyticshttp://www.google.com/analytics/友盟http://www.umeng.com/
2012-07-09 17:47:39
908
原创 CoreData的持久化存储
关键词:NSFetchedResultsController,NSFetchRequest,NSEntityDescription,NSManagedObject,NSManagedObjectContext,NSManagedObjectModel,NSPersistentStoreCoordinator,xxx.xcdatamodeld.以一个Person类的存储为例,描述Core
2012-07-09 17:33:14
1152
转载 KVO/KVC机制资料汇总
Objective-C里面的Key-Value Observing (KVO)机制,非常不错,可以很好的减少浇水代码。关于KVO的学习,可以参考文章:《Key-Value Observing快速入门》:http://www.cocoadev.cn/Objective-C/Key-Value-Observing-Quick-Start-cn.asp Key-Value Codin
2012-02-28 17:39:30
725
原创 一段异步操作的代码(清理缓存)
在IOS项目里,有时候会执行一些大块的操作,例如访问网络,大的文件读写,删除等操作,如果直接在主线程里执行,往往会堵塞UI,这时候不得不考虑使用异步操作,使用GCD技术可以很方便的进行异步操作。一段清理缓存的代码如下:dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),
2012-02-22 19:21:34
7148
原创 IOS里用宏定义通用单例
程序里经常使用单例,可以做成一个简单的宏作为实现部分,来提高开发效率.MyClass类头文件里定义一个静态函数: + (MyClass*)sharedMyclass;实现部分:SYNTHESIZE_SINGLETON_FOR_CLASS(MyClass);定义宏如下:#define SYNTHESIZE_SINGLETON_FOR_CLASS(classname) \ \
2011-12-12 14:10:18
3983
原创 笔记--键盘的显示和隐藏
在viewController里:// 注册键盘事件监听器,键盘消失和键盘显示[[NSNotificationCenterdefaultCenter] addObserver:selfselector:@selector(keyboardWasShown:)name:UIKeyboardDidShowNotificationobject:nil];[[NSNotific
2011-11-08 17:22:52
723
原创 两个3D效果
第一种:是大家都知道的开源代码openflow,相关链接:http://www.sunetos.com/items/2010/12/05/open-source-ios-coverflow-implementations/第二种:绕某个中心线旋转的3D效果特效代码如下:.h里#import@interface Test3DController :UI
2011-11-07 15:35:47
824
原创 点击一个textView里的link导航至程序内可返回的自定义webView
1,在AppDelegate.h里定义一个 id currentViewController;在AppDelegate.m里@implementation UIApplication (Private)- (BOOL)customOpenURL:(NSURL*)url{ beautyAppDelegate *MyWatcher = [[UIApplica
2011-11-04 18:37:24
1734
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人