Unity3D(以下简称Unity)是今年来非常流行的游戏开发引擎。他不仅有足够和unreal(虚幻)引擎媲美的渲染效果,足够多的平台输出,更为突出的就是Unity本身的编辑器。unity本身除了使用mono脚本(c#,js等)来作为游戏脚本外,还可以用于扩展编辑器,也就是所谓的unity插件。所以unity除了有大量的游戏开发者、虚拟现实(虚拟现实增强)开发者外,还有大量的插件开发者。这从unity store(官方商城)就足以看得出来。有了大量的插件,使用得当将会大大提高开发效率,为开发团队节约成本。

在中大型游戏开发中,编辑器开发十分必要

除了使用第三方插件外,开发团队十分有必要使用自己定制的插件。当然,这不是说一定要写插件。我曾写过很多unity的小游戏、比如贪吃蛇、吃豆人、横版冒险岛类的游戏、当然还有经典的坦克大战,这些游戏是如此的简单,以至于可依在1-2天内完成,以至于写插件都觉得是个累赘。是的,插件也只是在必要时才写。我参与过中型的手机在线游戏开发,项目含有一个纸娃娃系统,做法是拿到模型后,程序将其拆分成各个部件的Prefab,然后在游戏中拼接起来。于是我就动手写了纸娃娃的插件,功能非常简单,通过菜单打开一个窗口,在窗口中进行各种设置,然后点一下拆分。或者我会更加偷懒地写一个右键菜单功能,选择要拆分的模型,右键拆分。ok,就是这么便利。当然,这个也仅仅的编辑器开发中较为简单的。

为什么是“我”来写插件?

这不是个问题,在团队中,谁都可以写插件,如果你开发的插件好用,那么你离开发团队的核心不远了。试想想,团队中大多数的人在使用你的插件,那你在团队中的价值就显而易见了。说白了,你就是比普通写游戏逻辑的牛(可能你的技术本不牛)。

开发插件的乐趣

作为游戏开发者,我很喜欢做游戏,我会非常享受做游戏的每一个瞬间。开发插件作为游戏开发的一环,也是我的乐趣所在。甚至有一段时间热衷于研究数值曲线,利用unity自带的animation窗口编辑器曲线,最终产生游戏数值,这种想法,我都佩服自己。游戏业普遍是高强度开发,悲观的情绪不仅影响开发,更重要的是会影响身体健康。所以,苦中作乐,甚至接受他,从中发现属于自己的乐趣,是保持开发热情的关键。有时候,看着代码,都会笑。

开发插件的知识储备

官方的api文档还是不错的,E文不行的话,unity圣典也是个好地方,里面有还不错的翻译。还有就是多看看别人写的插件,比如NGUI。

为什么要写这个文章?

一是记下游戏开发的一切,因为热爱游戏开发。二是为了看看自己的表达能力,程序员普遍表达能力不足,借此提高也是不错的事情。

unity3D插件开发——前篇的更多相关文章

  1. VS2010+MVC4+Spring.NET2+NHibernate4-传统三层架构-前篇

    VS2010+MVC4+Spring.NET2+NHibernate4 - 传统三层架构 - 前篇 一直追求使用开源项目,就因一个字:懒! 一直想整理一下的,却一直懒到现在!从当初用的MVC3到现在的 ...

  2. Unity3d《Shader篇》漫反射

    Unity3d<Shader篇>漫反射 Shader "Custom/Ambient" { Properties { _MainTex ("Base (RGB ...

  3. 【翻译】西川善司「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密,前篇(2)

    Lighting和Shading(2)镜面反射的控制和模拟次级表面散射技术 http://www.4gamer.net/games/216/G021678/20140703095/index_2.ht ...

  4. ASP.NET自定义控件组件开发 第三章 为控件添加事件 前篇

    原文:ASP.NET自定义控件组件开发 第三章 为控件添加事件 前篇 第三章 为控件添加事件 好了,我们之前以前开发一个控件.而且也添加了属性,开发也很规范,但是那个控件还差最后一点:添加事件. 系列 ...

  5. 【原创】构建高性能ASP.NET站点 第六章—性能瓶颈诊断与初步调优(下前篇)—简单的优化措施

    原文:[原创]构建高性能ASP.NET站点 第六章-性能瓶颈诊断与初步调优(下前篇)-简单的优化措施 构建高性能ASP.NET站点 第六章—性能瓶颈诊断与初步调优(下前篇)—简单的优化措施 前言:本篇 ...

  6. [原创].NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇)

    原文:[原创].NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) .NET 分布式架构开发实战之四 构建从理想和实现之间的桥梁(前篇) 前言:上一篇文章讲述了一些实现DAL的理论,本 ...

  7. webpack2 前篇

    webpack2 前篇 #webpack 前两天用了一天半时间琢磨了下webpack2,想起去年这时候,面对webpack1那样恶心的文档,前前后后搞了好几次才摸索清楚,那真是吐了. 划重点 其实we ...

  8. 文本分类需要CNN?No!fastText完美解决你的需求(前篇)

    http://blog.csdn.net/weixin_36604953/article/details/78195462?locationNum=8&fps=1 文本分类需要CNN?No!f ...

  9. Android深入四大组件(四)Android8.0 根Activity启动过程(前篇)

    前言 在几个月前我写了Android深入四大组件(一)应用程序启动过程(前篇)和Android深入四大组件(一)应用程序启动过程(后篇)这两篇文章,它们都是基于Android 7.0,当我开始阅读An ...

随机推荐

  1. 简洁、轻量的前端UI框架 - Hbook

    Simple, lightweight front-end UI framework Get Start : http://www.bookcss.com Introduce Hbook focus ...

  2. Python package install血泪史

    [前言][絮絮叨叨篇]:说实话,不是第一次安装Python库了,但是貌似没有特别顺利的时候,可能还是遇到的困难不够多咯.配置环境真是个糟心的事儿,不过作为菜鸟,还是得磨练磨练,毕竟某人云:" ...

  3. 如何用Visual Studio 2008 写汇编程序?

    如何用Visual Studio 2008写汇编程序? 最近在上夏季小学期,在学汇编语言,关于用什么编辑环境一直很纠结.很想找到一个比较好的IDE,但是试了几个像RadASM之类的,发现还不是很满意. ...

  4. jquery.validate提示错误方法

    修改jquery.validate提示错误方法,将错误信息用弹出框提示 <script src="@Url.Content("~/Scripts/jquery.validat ...

  5. MySQL · 引擎特性 · InnoDB IO子系统

    前言 InnoDB做为一款成熟的跨平台数据库引擎,其实现了一套高效易用的IO接口,包括同步异步IO,IO合并等.本文简单介绍一下其内部实现,主要的代码集中在os0file.cc这个文件中.本文的分析默 ...

  6. Scalatra--Introduction And Quick start

    Introduction Scalatra是一款轻易级Scala web框架,通过Scalatra可以很轻易创建web Application,由Linkedln开源并遵循了Ruby Web框架的Si ...

  7. daterangepicker 时间插件

    在工作中学习到的一种插件 上网查询之后发现 在bootstrap中的时间选择器有两种:dateTimePicker和dateRangePicker HTML <div id="repo ...

  8. iOS热更新技术被苹果官方警告?涉及到RN、Weex、JSPatch!!!

    今天一早,不少iOS开发群都炸窝了,原因是部分iOS开发者收到了苹果的警告邮件: 有开发者质疑可能是项目中使用了JSPatch.weex以及ReactNative等热更新技术.对于修复bug提交审核的 ...

  9. 3361: [Usaco2004 Jan]培根距离

    3361: [Usaco2004 Jan]培根距离 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 16  Solved: 13[Submit][Sta ...

  10. Robot Framework 使用笔记

    条件表达式: Run Keyword If 表达式 执行动作   ... ELSE IF 表达式 执行动作 ... ELSE 执行动作   基础格式见上表,下面是我遇到的坑: 表达式:判断字符串变量是 ...