本帖最后由 宅男女神 于 2016-5-6 20:27 编辑
$ t* `1 b+ {. M' ?3 x3 U7 ]7 B8 ?1 A* @6 O) [+ W8 _3 p+ G5 e
网页游戏开发入门教程一(webgame+design), e: m( B& g' L& ^, `4 R5 A
一、简单的程序框架。
9 e6 w O& o' P3 x Owebgame 程序构成:
8 Q1 ?9 k" j0 I% C$ w& x, F三大部分。
% y! L- E6 @2 i" ^2 z9 r: Z第一是数据流程。第二是程序。第三是美术。
" W0 C% \: v9 V# Y% R+ X1 K( [其中,数据流程包括了功能。也只有在功能中才能体现数据流程。
+ I& h, D L, G6 n数据流程相当的麻烦,后面再讨论。. t2 ~$ K9 I- h6 v
比如最简单的卖买产品。
- R6 R2 K l" U. s- B要实现这个功能。
( {- j8 ?' w$ L9 A1 v* ~/ @那么需要有产品基础表、产品详细表、商店表、背包表。如果扩展性更强,相应的双表是少不不了的。# n( f5 i2 A" N) t4 m q
表的问题都简单了。关键是这个物品有什么用。这样物品的来源,一大堆数据,物品的走向,又是一大堆: g4 {* ]2 _7 r$ n" ?) w& |
数据。
# J! X# a+ @. z$ H最后,这些数据得绕成一个圈。; Q2 [7 S8 m7 m5 z
绕圈是一件困难的事情。特别是功能和道具多了起来的时候。难度是2 的n 次方。) A: S) w F* ^6 g& _* h8 _* q
在绕圈之前,如果你比较熟练设计模式。那么这个过程可以简化。难度由 2 的n 次方变为1。" ^. b" ~2 Y$ Y; r6 c0 z4 g; d
只需要有控制器、事件工厂、抽象道具工厂这三个虚类;再加上定时器,任务编辑器,这两个通用类。即) D+ ]& l0 p$ e. N1 o; f' O2 S
可以构建一个健壮、高扩展的webgame。
) A7 F+ R) C. r8 ^在webgame 里控制器几乎可以等同于页面。随便采用一种模板技术即能很方便的处理。
% t) y/ s: l- c- X% R9 |事件工厂是一个抽象类,所有的事件,如打工、战斗、移动等都由事件工厂的生产。并且接口相同,方便$ m2 E, n# c$ u
控制器控制。工厂模式。7 z% u f( [9 F0 C! ^
抽象道具工厂是一个抽象类,所有的道具,如城市、地图、装备等,都由抽象道具工厂生产。并且接口相
+ v$ \: r( j3 E$ l! z同,工厂模式,事件与道具的结合又是一个桥接模式。
. B7 h# ?; B y' r. L, W美术:
/ c/ Z2 V p0 W6 u8 Q1 z7 p6 `, HUI。简洁漂亮的界面总会有好处。小图标。道具,地图,装备。一类至少10 个吧?大体上百把个是需要的。$ ] Y! f2 O% Q ?/ ^3 o
程序分5 个部分:5 Y5 d( Z0 C2 g2 g) V/ W' c- k
服务器定时器。(C 语言或自己设定服务器)定时循环执行某一段代码。而这段代码主要是根据数据库的
3 E$ m/ y$ J! S! v& H$ y @数据进行更新。这个可以找个C 语言程序员来做。对于C 语言程序员来讲,这个功能是相当的简单。当然,5 B' \; ^" y# f! |3 d
具体的处理数据的判断和操作数据库,需要你自己写。让C 语言程序员给你段标准代码就行了。完全支持5 ^) D d4 d1 ?6 I h P
sql 语句的。
; C3 b( a: B! f& lphp 的话,可以配置corn 实现。但是不管是什么操作系统,配置的时间最低是1 分钟。所以,如果你要处
% l9 [7 `( ]9 ?3 d理1 秒钟刷新一次的情况。你还需要专门的定时器程序来处理,或者被定时执行的php 需要包含sleep().
, s# @5 M8 g/ `9 a5 U. s攻城狮论坛 bbs.vlan5.com #^_^# 版 权 归 原 作 者 所 有 本 资 料 仅.供试读% ~# Z# z9 ], K+ P; t( m
攻城狮论坛(技术+生活)群 2258097
0 O4 z" F2 k+ x, B当然,即使有即时交互,可以不管服务器端。只处理交互的双方的客户端。js 和ajax 实现。- @8 H9 m) N9 J1 _
功能页面、功能函数。主要就是数据存取,判断,数据走向。* ^7 ]2 u/ X* X$ M3 ~+ f
用上抽象类,会比较轻松。不过子类的爆炸是少不了的了。; W) g% b7 M& l
ajax 函数。(可选)某些需要伪即时的功能要用到。3 e4 {4 O3 ?+ c+ [" d- m
为了让游戏看起来酷一点。用吧。
2 U1 P% q& ~+ j- l2 w5 g; q$ Kjavascript 函数。(可选)模拟客户端的数据计算。也就是webgame 的与时间相关的数据。分为两部分。
# S+ Z& w4 \; j一部分是真实数据,是由服务器端的定时器计算的。另一部分是只有初始值,客户端显示用的。不需要即
S/ {9 Q7 t" ^1 x1 c时同步,仅仅需要模拟同步就行。" P7 v& |+ W& i$ J ~( i) a
这里还包括一些漂亮的UI 特效。毕竟是游戏。, L( j" o" @) ]9 n' M) v7 V
数据库。一大堆基础数据表和详细数据表。基础数据表:比如等级1 到等级100 的用户的属性初始值。详
: M8 W& L4 ?3 l; ]; t; R细数据表:每个用户的具体属性。
/ I# F' x# i- k+ W/ [3 t) F数据库上,尽量优化。结构上能用1 字节的就别用2 字节。
4 L2 H% Z: F& }) L8 w; Q
3 P) Q' X# L I0 ]5 K2 W资源批量下载地址: ---> http://bbs.vlan5.com/forum-94-1.html% C' |9 V2 N! F# E
更多精品资源,打包下载(可按知识点/发布日期/培训班/讲师等方式批量下载视频/文档/资料/电子书)
4 @1 r# g" t2 [: r' v6 m1 R& V- h g# U, Q& v$ D! |" T4 q
论坛便捷链接:+ x& j# u' u! _ g, J
能帮助您和更多的人找到自己想要的资料并取得更大进步,是我们最大的愿望。 |
1 _$ x0 d: O9 [本贴附件下载链接:9 Y [( d* b+ Q6 f8 X o
|