作者chenglap (无想流流星拳)
看板GameDesign
标题Re: [请益] Unity3D 的版权与费用问题
时间Sun May 6 23:20:15 2012
※ 引述《chenglap (无想流流星拳)》之铭言:
: → chenglap:真正能确保多平台的是系统设计, 跟语言工具没甚麽关系... 05/06 23:08
说说这方面的心得.
我写过的语言是这些:
BASICA, GWBASIC, QBASIC, QuickBasic, TrueBasic, TurboBasic, VB,
Turbo C, Borland C++, LPC, C++ Builder, MFC, C# (in Unity), objective C,
Turbo Pascal, Delphi, J++, java, power builder, asm...
记得的是这些, 记不起的就算了.
所以对我来说一个工具被杀掉, 然後重新再用另外的语言和工具, 已经是
理所当然的事情了. 电脑这二十年来不断的进步, 从个人电脑到手机, 工
具都是不断在更新, 任何工具都会过时. 所有东西早晚都要重写. 这是不
能避免的宿命, 这也是做资讯业最痛苦的地方, 那就是你学的一技之长很
快就会被时间淘汰, 那很可能只是两三年的事情. 快速掌握新的工具然後
快速开发出好的软体, 打出品牌而不用顾虑太远的问题...
大部份东西都是万般带不走的, 无论你舍不舍得也好.
经历过这麽多语言, 真正能带走的其实是「系统设计」, 「专案管理」和
「逻辑」这三种东西, 没有了. 其他东西全部都是带不走的, 重写是必然
的, 就像今天我要把民国无双重新弄进 iOS, Delphi 也是早晚要舍弃掉
的东西, 虽然他说要出 firemonkey 说有能力把 Delphi 弄进 iOS, 但我
也只觉得听听就好. 这麽多年的经验就是告诉我这些空头支票, 是不可以
信任的.
真正能让你多平台的, 是你要弄出方便移植的结构, 方便移植的结构是:
1. 使用者界面跟主体的绝对分离
2. 物件避免用太方便的 Datatype, 例如不要用 Collection, Map, enum
之类, 用回最基础的 array
3. 多使用文本作为讯息传达的媒介, 因为所有语言都能处理 string
4. 每段副程式尽量保持出入口只有一个, 方便接驳和分离重写
5. 画面的座标不要用实数, 改用比例, 方便适应不同的解像度
6. 所有参数和公式独立放置, 方便切割
7. Datasource 一定要完全独立
8. 所有输出和输入都在外面再包一个 function 去呼叫
然後真的要多平台时, 就可以只重写某些必要的部份, 例如 GUI, 而其他
的都可以重用. 这样才是解决多平台最好的方法... 任何语言说的多平台
功能都是听听就好, 不要当真. Java 也说是多平台了, 最後还不是各处
乡村各处例, 後来 Java 更引人踩进了 Android 这个大坑. 那实在不是
好事情. 该切割的东西还是要切掉, 这是我多年来的经验教训.
或者去写 web, 那才是真正的多平台.
--
民国无双更新 v1.3 抗战篇 - 芦沟晓月:
http://sites.google.com/site/kowloonia/home
顺便宣传一下 SLG 版,
(C)lass > 8 战略高手 > 11 GameTopics > 28 SLG
因为没人气的关系, 接下了版主之位. 想谈战略游戏的, 不管新旧的都
可以过来. 我有玩过的多少都会答一下.
--
※ 编辑: chenglap 来自: 61.18.51.146 (05/06 23:29)
1F:推 yhn0tgb60:感谢分享 05/06 23:50
2F:→ yhn0tgb60:像 "一桶天下" 就是以 web跨平台的例子吧 05/06 23:51
3F:→ chenglap:web 只要你用的是 html 就是多平台. 05/06 23:54
4F:→ yhn0tgb60:这又让我想到 我之前写as3 写了一年多 05/06 23:55
5F:→ yhn0tgb60:建立了自己的 framework 一部一部想让他变成完整的引擎 05/06 23:56
6F:→ yhn0tgb60:现在也不能用了 = = 05/06 23:56
7F:→ chenglap:把逻辑完全分离成 telnet 状是我现在的方法... 05/06 23:58
8F:→ chenglap:我现在的做法是所有游戏的主体都是 text console 05/06 23:58
9F:推 yhn0tgb60:了解... 05/07 00:01
10F:推 imagefish:这分享很不错!! 05/07 00:51
11F:推 asleisureto:AS3现在应该还是主流 怎会不能用了呢@@? 05/07 01:11
12F:推 justben:只好用大绝招 云端游戏了!!XD 05/07 08:19
13F:推 Ebergies:推 05/07 09:39
14F:→ yhn0tgb60:不用AS3 一来是因为adobe已经放弃手机平台 05/07 10:09
15F:→ yhn0tgb60:加上我自己现在不做Web 所以觉得AS3继续研究的价值不高 05/07 10:10
16F:推 Kendai:推推 05/07 10:38
17F:推 Foremanytz:推推 05/07 17:41
18F:→ chrisQQ:web 其实才是跨平台… 你看那精美的 IE6 IE7 IE8 IE9... 05/11 10:31
19F:→ chenglap:我比较倾向 web + html5, 现在的制式比较统一一点. 05/11 10:44
20F:→ chenglap:不要用甚麽 activeX (还有人用吗?) 就可以. 05/11 10:44