一般的大型游戏开发不是单一用某一种软件语言的问题。一个大型游戏的开发需要非常大的团队用各种各样的语言和工具来完成。
总结一下主要有C/C,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。
首先一般的游戏开发架构(Windows平台)从底到顶一般是DirectX64——游戏引擎——游戏。
大型游戏开发的大部分工作其实都是在编写游戏脚本,脚本是大型游戏得以如此高速开发和发布的主要原因。脚本化的开发让游戏开发摆脱了硬编码的种种弊端,让游戏内容可以轻易的修改和调试。比如比较流行的语言。,然后编写脚本将其组织成一个游戏,不需要什么底层的编程语言。
Windows平台比较流行的方法是使用最新版本的VisualStudio,显卡厂商如NVIDIA也会为VS开发一些插件来简化显卡编程和调试。
扩展资料:
汇编语言
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号“”的机器代码),于是就产生了汇编语言。所以说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称符号语言。
汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码。而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。
汇编语言中由于使用了助记符号,用汇编语言编制的程序送入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的“汇编程序“的加工和翻译,才能变成能够被计算机识别和处理的二进制代码程序。
用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。
汇编语言像机器指令一样,是硬件 *** 作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。但是,汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快,有着高级语言不可替代的用途。
高级语言
不论是机器语言还是汇编语言都是面向硬件的具体 *** 作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。
这种与自然语言相近并为计算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的程序就可以通用。
如今被广泛使用的高级语言有BASIC、PASCAL、C、COBOL、FORTRAN、LOGO以及VC、VB等。这些语言都是属于系统软件。
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。
编译方式是:事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:源程序进入计算机时,解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。
PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。每一种高级(程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件功能相分离(彻底脱离了具体的指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植
分数太少了。
报告就不写了。
这个分数只够源代码的。
;--------------------------------------------------------------------------------
;此模板是纯DOS程序代码,需要MASM50,编译时请使用"编译 -> DOS"方式。
;--------------------------------------------------------------------------------
Init_game macro op1,op2,op3,op4,op5,op6
mov cx,00h
mov dh,op1
mov dl,op2
op6:
mov ah,02h
mov bh,00h
int 10h
push cx
mov ah,0ah
mov al,op3
mov bh,00h
mov cx,01h
int 10h
pop cx
inc cx
inc op4
cmp cx,op5
jne op6
endm
clear_screen macro op1,op2,op3,op4
mov ah,06h
mov al,00h
mov bh,07h
mov ch,op1
mov cl,op2
mov dh,op3
mov dl,op4
int 10h
mov ah,02h
mov bh,00h
mov dh,00h
mov dl,00h
int 10h
endm
menu macro op1,op2,op3
mov ah,02h
mov bh,00h
mov dh,op1
mov dl,op2
int 10h
mov ah,09h
lea dx,op3
int 21h
endm
data segment
linjiang db "Made by lin jiang$"
no db "NO:021411$"
meg db "Let us have a game!!Come on!!$"
meg1 db "Select Menu$"
meg2 db "Please select the game speed,ESC to quit$"
meg3 db "1Very slow Too easy,speed up!$"
meg4 db "2Slow Everybody can deal$"
meg5 db "3Nomal I think you can deal!$"
meg6 db "4Fast A challengePay attention!$"
meg7 db "5Very Fast Too hard,Have a try$"
meg8 db "6Fastest Are you crazy$"
meg9 db "Select the number among 1-6 and press ENTER to start!$"
meg10 db "Game Speed Select:$"
hotkey db "When you are playing games:$"
hotkey1 db "ESC to return to menu$"
hotkey2 db "SPACE to pause the game$"
hotkey3 db "Press any key to play games$"
hotkey4 db "Are you ready$"
failmeg db "The letter is arrive the bottom, You are lost ! :($"
failmeg0 db "Press ENTER to go on$"
failmeg1 db "Game is over!$"
failmeg2 db "Press ENTER to return menu and press ESC to exit!$"
failmeg3 db "Bye-Bye!Thank for your playing!!$"
failmeg4 db "Press any key to quit$"
speed dw 00d,1200d,800d,600d,400d,200d,100d
letters db "jwmilzoeucgpravskntxhdyqfb"
db "iytpkwnxlsvxrmofzhgaebudjq"
db "nwimzoexrphysfqtvdcgljukda"
letters_bak db "jwmilzoeucgpravskntxhdyqfb"
db "iytpkwnxlsvxrmofzhgaebudjq"
db "nwimzoexrphysfqtvdcgljukda"
letter_counter db 0
life_flag db 78 dup(0)
position_flag db 78 dup(0)
present_position db 1
data ends
stack segment para stack 'stack'
db 64 dup(0)
stack ends
code segment
main proc far
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
mov letter_counter,00h
mov present_position,1
lea si,position_flag
mov ah,00h
mov cx,00h
init_postion_flag:
mov [si],ah
inc si
inc cx
cmp cx,78d
jne init_postion_flag
lea di,letters
lea si,letters_bak
mov cx,00h
init_letters:
mov ah,[si]
mov [di],ah
inc si
inc di
inc cx
cmp cx,78d
jne init_letters
mov ah,00h
lea si,life_flag
mov cx,00h
init_life_flag:
mov [si],ah
inc si
inc cx
cmp cx,78d
jne init_life_flag
mov cx,00h
mov ah,01h
or ch,00010000b
int 10h
clear_screen 00d,00d,24d,79d
Init_game 00d,00d,0ah,dl,80d,nextsign1
Init_game 24d,00d,0ah,dl,80d,nextsign2
Init_game 00d,00d,0ah,dh,25d,nextsign3
Init_game 00d,79d,0ah,dh,25d,nextsign4
menu 01d,15d,meg ;菜单信息的宏展开
menu 01h,61d,linjiang
menu 03d,20d,meg1
menu 03d,68d,no
menu 05d,15d,meg2
menu 07d,15d,meg3
menu 09d,15d,meg4
menu 11d,15d,meg5
menu 13d,15d,meg6
menu 15d,15d,meg7
menu 17d,15d,meg8
menu 19d,15d,meg9
menu 22d,15d,meg10
input: mov ah,02h
mov bh,00h
mov dh,22d
mov dl,33d
int 10h
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
mov ah,01h
int 21h
retry: cmp al,"1"
je speed1
cmp al,"2"
je speed2
cmp al,"3"
je speed3
cmp al,"4"
je speed4
cmp al,"5"
je speed5
cmp al,"6"
je speed6
cmp al,1bh
je to_over0
jmp input
to_over0:jmp over
speed1: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+2
mov speed,ax
jmp begin
speed2: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+4
mov speed,ax
jmp begin
speed3: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+6
mov speed,ax
jmp begin
speed4: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+8
mov speed,ax
jmp begin
speed5: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+10
mov speed,ax
jmp begin
speed6: mov ah,01h
int 21h
cmp al,0dh
jne otherkey
mov ax,speed+12
mov speed,ax
jmp begin
otherkey: ; 处理重复输入的代码段
push ax
mov ah,02h
mov bh,00h
mov dh,22d
mov dl,34d
int 10h
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
mov ah,02h
mov bh,00h
mov dh,22d
mov dl,33d
int 10h
pop ax
mov dx,ax
mov ah,02h
int 21h
jmp retry
begin:
clear_screen 01d,01d,23d,78d
menu 08d,20d,hotkey
menu 10d,20d,hotkey1
menu 12d,20d,hotkey2
menu 14d,20d,hotkey4
menu 16d,20d,hotkey3
mov ah,07h
int 21h
clear_screen 01d,01d,23d,78d
Init_game 23d,01d,01h,dl,78d,nextsign5
mov ah,02h ;光标初始化
mov bh,00h
mov dh,01h
mov dl,01h
int 10h
mov cx,00h
lea si,letters
nextletter: ; 初始化屏幕上方的字母
mov ah,02h
mov dl,[si]
int 21h
inc si
inc cx
cmp cx,78d
je nextcycle
jmp nextletter
from_front: ; 相关循环的算法
sub present_position,78d
jmp gobackto_si
find_zero:cmp letter_counter,78d
je recycle
cmp present_position,78d
je from_one
mov ah,00h
nextsi: add present_position,01h
inc si
cmp [si],ah
je gobackto_di
cmp present_position,78d
je from_one
jmp nextsi
from_one:mov present_position,01h
jmp gobackto_si
recycle:mov letter_counter,00h
mov present_position,01d
lea si,position_flag
mov cx,00h
mov ah,00h
clearsi: mov [si],ah
inc cx
cmp cx,78d
je nextcycle
inc si
jmp clearsi
nextcycle:
lea di,letters
lea si,position_flag
add present_position,31d
cmp present_position,78
ja from_front
gobackto_si:
add si,word ptr present_position
dec si
mov ah,[si]
cmp ah,01h
je find_zero
gobackto_di:
mov ah,01h
mov [si],ah
add di,word ptr present_position
dec di
mov dl,present_position
mov ah,02h ; 字母下落的代码段部分
mov bh,00h
mov dh,01h
int 10h
mov cx,00h
nextrow:push cx ; 新的一行
mov cx,00h
out_cycle: ; 延迟
push cx
mov cx,00h
in_cycle:
add cx,01h
cmp cx,50000d
jne in_cycle
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz pass ; 如果键盘缓冲区部分为空,则跳转
cmp al,1bh ; 如果键入ESC,则返回主菜单
je to_start1
cmp al," " ;如果键入SPACE,则游戏暂停
je pause
cmp al,[di] ;输入字母正确!跳转!
je disappear
pass:
pop cx
inc cx
cmp cx,speed
je print
jmp out_cycle
pause: push dx ;暂停处理
mov ah,06h
mov dl,0ffh
int 21h
pop dx
cmp al," "
jne pause
jmp pass
to_start1: ;返回主菜单
jmp start
print:
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
inc dh
mov ah,02h
mov bh,00h
int 10h
mov ah,0ah
mov al,[di]
mov bh,00h
mov cx,01h
int 10h
pop cx
inc cx
cmp cx,21d
je print_next_letter
jmp nextrow ; 下一行
disappear: ; 击中字母后的相关处理
pop cx
pop cx
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
jmp hit
print_next_letter: ; 处理原位置的空缺
lea si,life_flag
add si,word ptr present_position
dec si
mov ah,[si]
cmp ah,1
je fail
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
inc dh
mov ah,02h
mov bh,00h
int 10h
mov ah,0ah
mov al," "
mov bh,00h
mov cx,01h
int 10h
mov ah,1
mov [si],ah
hit: mov ah,02h
mov bh,00h
mov dh,01h
mov dl,present_position
int 10h
mov al,[di] ; 出现下一个新字母的数法
add al,7
cmp al,7ah
ja convey_letter
mov ah,0ah
mov bh,00h
mov cx,01h
int 10h
mov [di],al
add letter_counter,01h
jmp nextcycle
convey_letter:
sub al,7ah
add al,61h
mov ah,0ah
mov bh,00h
mov cx,01h
int 10h
mov [di],al
add letter_counter,01h
jmp nextcycle
fail: mov ah,0ah ;游戏失败后的相关处理
mov al," "
mov cx,01h
int 10h
inc dh
mov ah,02h
mov bh,00h
int 10h
mov ah,0ah
mov al,[di]
mov bh,00h
mov cx,01h
int 10h
mov ah,02h
mov bh,00h
mov dh,12d
mov dl,17d
int 10h
push dx
mov ah,09h
lea dx,failmeg
int 21h
pop dx
add dh,2
mov ah,02h
mov bh,00h
int 10h
mov ah,09h
lea dx,failmeg0
int 21h
re: mov ah,07h
int 21h
cmp al,0dh
jne re
clear_screen 01,01,23,78
mov ah,02h
mov bh,00h
mov dh,11d
mov dl,20d
int 10h
push dx
mov ah,09h
lea dx,failmeg1
int 21h
pop dx
inc dh
inc dh
mov ah,02h
mov bh,00h
int 10h
mov ah,09h
lea dx,failmeg2
int 21h
notkey:
mov ah,07h
int 21h
cmp al,0dh
je to_start
cmp al,1bh
je over
jmp notkey
to_start:
clear_screen 00,00,24,79
jmp start
over: clear_screen 01,01,23,78
mov ah,02h
mov bh,00h
mov dh,11d
mov dl,15h
int 10h
mov ah,09h
lea dx,failmeg3
int 21h
mov ah,02h
mov bh,00h
mov dh,13d
mov dl,15h
int 10h
mov ah,09h
lea dx,failmeg4
int 21h
mov ah,07h
int 21h
mov ah,07h
int 21h
clear_screen 00,00,24,79
mov ax,4c00h
int 21h
main endp
code ends
end start
那个建议不要用汇编写了,太麻烦
如果说设计思想嘛可以考虑把其分成几个部分来画反正每次都是把原来有字母的地方的背景画一次,然后再画那个字母(新坐标)一次一次的画就可以了
还是那句话,太麻烦了
一、游戏程序开发的工作主要包括哪些方面
游戏开发中的程序开发主要由如下几个方面组成:
1.图形引擎
2.声音引擎
3.物理引擎
4.游戏引擎
5.人工智能或游戏逻辑
6.游戏GUI界面(菜单)
7.游戏开发工具
8.支持局域网对战的网络引擎开发
9.支持互联网对战的网络引擎开发
下面逐一介绍每个部分:
1.图形引擎主要包含游戏中的场景(室内或室外)管理与渲染,角色的动作管理绘制,特效管理与渲染(粒子系统,自然模拟(如水纹,植物等模拟)),光照和材质处理,LOD(LevelObjectDetail)管理等,另外还有图形数据转换工具开发,这些工具主要用于把美工用DCC软件(如3DSMax,Maya,SoftXSI,SoftImage3D等)软件制作的模型和动作数据以及用Photoshop或painter等工具制作的贴图,转化成游戏程序中用的资源文件。
2.声音引擎主要包含音效(SoundEffect简称SE),语音(VOICE),背景音乐(Backgroundmusic简称BGM)的播放。SE是指那些在游戏中频繁播放,而且播放时间比较短,但要求能及时无延迟的播放,VOICE是指游戏中的语音或人声,这部分对声音品质要求比较高,基本上用比较高的采样率录制和回放声音,但和SE一样要求能及时无延迟的播放,SE在有的时候因为内存容量的问题,在不影响效果的前提下,可能会降低采样率,但VOICE由于降低采样率对效果影响比较大,所以一般VOICE不采用降低采样率的做法。BGM是指游戏中一长段循环播放(也有不循环,只播放一次)的背景音乐,正是由于BGM的这种特性,一般游戏的背景音乐是读盘(光盘或硬盘)来播放。另外一些高级声音特效,如EAX,数字影院系统(DTS51),数字杜比环绕等。
3.物理引擎主要包含游戏世界中的物体之间、物体和场景之间发生碰撞后的力学模拟,以及发生碰撞后的物体骨骼运动的力学模拟(比较著名的物理引擎有havok公司的gamedynamicssdk,还有opensource的ODE—OpenDynamicsEngine)。
4.游戏引擎主要是把图形引擎、声音引擎、物理引擎整合起来,主要针对某个游戏制作一个游戏系统,其包含游戏关卡编辑器,主要用途是可以可视化的对场景进行调整,光照效果和雾化等效果调整,事件设置,道具摆放,NPC设置,另外还有角色编辑器,主要用于编辑角色的属性和检查动作数据的正确性。一般日本游戏公司的做法,他们会把关卡编辑器和角色编辑器直接做到游戏中,所有的参数调整都在游戏中通过调试菜单来进行编辑,所以一般他们把这部分调试菜单的功能做的很强大,同时在屏幕上实时的显示一些重要的信息,这样做的好处是关卡编辑器调整的效果直接就是游戏的效果,但是对于程序的重用性来说可能不是很好,比如说要用到另外一个游戏项目中就比较难,除非两个游戏类型相同,只要把场景和角色数据换一下,还有做下一代产品也没有问题,只要根据式样增加调试菜单的功能就可以了。
5.人工智能和游戏逻辑开发,这部分日本和欧美的游戏开发模式也有很大不同,在欧美游戏公司中运用脚本语言开发很普遍,所以这部分程序开发主要是用脚本语言编写,而且脚本程序和游戏程序的耦合性很低,有单独的编辑、编译和调试环境,这样比较利于游戏程序和关卡设计开发分开,同时并行开发,所以一般他们都会有专门做关卡设计的程序员岗位。而日本游戏公司脚本语言一般和游戏的耦合性比较高,一般通过一些语言的宏功能和一些编译器的特定功能来完成一个简单的脚本系统,所以一般这些脚本程序只能在游戏程序中进行调试,而不能在一个单独的脚本编辑,编译环境中进行开发。
6.游戏GUI界面(菜单),主要是指那些游戏中用户界面设计,有做的复杂,有简单的,做的简单就是2DGUI界面,做的复杂有3DGUI界面。
7.游戏开发工具主要包含关卡编辑器,角色编辑器,资源打包管理,DCC软件的插件工具等开发。
8.支持局域网对战的网络引擎开发,主要解决局域网网络发包和延迟处理,通讯同步的问题,有同步通讯和异步通讯两种做法,异步通讯用于那些对运行帧速要求比较高的游戏,同步通讯相对异步通讯来说效率相对低,但是同步通讯的编程模型相对异步通讯来得简单一些。
9.支持互联网对战的网络引擎开发,目前大部分网游都是C/S结构的,服务器端软件配置管理,服务器程序的最优化,还有游戏大厅、组队、游戏逻辑处理、道具管理、收费系统等。另外还有一些网络系统是C/S和P2P两种结构混合的,如XBOXLive等。
二、游戏公司中有哪些和程序员相关的岗位
程序员在游戏公司中的岗位在日本游戏公司和欧美的游戏公司有些不同,日本游戏公司中程序员的岗位主要有技术监督(Director),主程序员(MainProgrammer),程序员(Programmer),在日本游戏公司里负责游戏项目开发的程序员,一般不会专门根据工作内容划分程序员,除了独立的系统研究室和声音系统制作部门(这两个部门是比较独立的,往往同时给好几个项目服务),负责每个游戏项目开发的程序员,随时都可能一人多职,比如说主程序员除了负责整个游戏系统以外,可能还要负责图形或声音引擎开发等,程序员除了人工智能以外还有菜单制作等。这种情况在欧美的游戏公司比较少见,他们分工的比较细,一般有图形程序员,声音程序员,人工智能或游戏关卡程序员,物理程序员,每个组中可能还会有一个Leader。
三、游戏公司一般是如何招聘程序员的
这一点,日本公司和欧美公司也有些不同。日本公司一般喜欢从一些高校中招聘一些应届优秀毕业生,一方面比招聘有经验的人要来的成本低,另方面新人是一张白纸,容易培养,像SEGA、KONAMI等都是按这种原则招聘员工的,所以想进入日本游戏公司,你要学好你的软件课程。而欧美公司希望招聘进来,能马上进入项目的开发中去,所以他们一般希望招聘有工作经验的人,即使不是行业中,在相关行业中工作2、3年的也可以,所以想进入欧美游戏公司你的工作经历很重要。
四、想成为一名游戏开发程序员应该具备哪些条件
我觉的一个游戏软件程序员,最起码的要求是熟练掌握计算机本科专业所学的知识,主要包括C语言或C语言,数据结构,编译原理,算法等,另外线性代数、微积分、牛顿力学在图形和物理引擎开发方面用途也很广泛,如果要提高的话还有必要了解硬件相关的知识如计算机体系结构、汇编语言,这些对我们学习一个新的硬件平台、编写最优化代码、提高自己游戏的竞争力都是非常有益的。另外,保持有恒心、不怕苦(比如说通宵加班)的心态,对游戏的热情也是非常重要的。对于那些想进入游戏行业,但缺乏软件开发知识的人,可以通过参加游戏开发培训来
五、学习游戏编程有哪些好方法
现在有很多人,计算机本科毕业,学了很多软件开发的知识,但是一旦要用到实际的项目开发时,感觉无从下手,这主要是在学校里运用知识的机会太少了。所以学习游戏编程最好的方法是能实际参与到一个好的游戏项目中和有丰富开发经验的人一起开发游戏,可能学到很多你从书本上学不到知识和技能。但有时候你一时还没有机会参与到一个好项目中,没有机会进入一家好的游戏公司,但是你对游戏开发有一腔热情,很希望学习游戏开发的技能,那你就应该去参加专门的游戏开发培训,因为游戏开发培训班中的老师都是一些有丰富开发经验的老师,一般都有五年丰富的项目开发经验,听他们的课,实际上就是在和他一起分享这么多年的开发经验,另外游戏开发培训课程中会专门设计一些项目和课题,它们本身就是可以直接运用游戏开发中,这样你可以不进入著名的游戏公司,但可以学到这些公司中一些常用的开发技能。另外还有一种方法经济实惠的方法,参加一些网上志愿者的开源项目,这些项目从品质来说有好有坏,选择一个好的项目非常重要,另外他们中间本身有许多是业内人士,本来你要进入他们公司,才能学习到他们的经验,但是通过开源项目,你就有向他们学习的机会了,说不定哪一天,你就进入一家知名的游戏公司了,不过目前开源的完整游戏项目好的不多,到是在图形引擎和物理引擎方面有一些很不错的开源项目,但要加入进去的话,你的基础一定要好啊,有些开源的团队也不是随便什么人就能加入的。
以上就是关于制作游戏需要哪些最基础的软件全部的内容,包括:制作游戏需要哪些最基础的软件、汇编语言程序神经打字游戏报告、汇编语言编写打字游戏 课程设计思想等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)