成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深度剖析Python 腳本問題

開發(fā) 后端
大部分的游戲編輯都直接寫入游戲代碼,例如計算公式、游戲流程等,但隨著游戲產(chǎn)業(yè)的不斷發(fā)展,游戲開發(fā)本身也變得越來越復(fù)雜,加上了Python 腳本的元素。

在開發(fā)游戲時主要使用的Python 腳本主要有兩種方式,一種方式是主程序使用一門高級語言,比如C++進行編寫,然后對其嵌入一個腳本解釋器,在運行時動態(tài)執(zhí)行一些腳本函數(shù)。

游戲企劃需要更多的時間來對游戲進行調(diào)整,如果游戲邏輯還寫在代碼中,則企劃對游戲的每次修改都要通過程序進行,而且還需要重新編譯以及重啟程序,這樣工作效率就大大降低了。

在游戲中使用腳本,就正好能解決上述問題,小到一些計算公式,大到游戲的控制流程都可以通過腳本完成,而且目前的腳本系統(tǒng)大多是解釋執(zhí)行的,因此都可以支持運行時動態(tài)修改,這樣一來可以立即看到修改結(jié)果,非常方便。

如何使用腳本在游戲中使用腳本主要有兩種方式。一種方式是主程序使用一門高級語言,比如C++進行編寫,然后對其嵌入一個腳本解釋器,在運行時動態(tài)執(zhí)行一些腳本函數(shù);

另一種方式則是整個程序全部使用Python 腳本編寫,例如一些泥巴游戲就是直接用LPC腳本編寫的。本文主要研究嵌入式腳本使用方法,因為目前大部分的腳本都不能提供如VC++那樣方便的調(diào)試環(huán)境。

如果程序全部用腳本編寫,當(dāng)腳本多達(dá)幾萬行甚至十幾萬行的時候,調(diào)試會成為一件非常痛苦的事。而且嵌入式使用時可以將一些非常耗時的代碼用C++編寫,以保持較好的運行效率。

程序從C++的main( )函數(shù)開始啟動,然后進入主循環(huán),在一些C++函數(shù)中會直接調(diào)用腳本函數(shù),在腳本函數(shù)的運行過程中,又可能調(diào)用C++的擴展函數(shù)。C++擴展函數(shù)的主要功能有兩個:一是用來增加腳本無法直接編寫的功能,二是用來替換腳本中運行速度過慢的函數(shù)。#t#

上述過程的關(guān)鍵點就在于C++和腳本如何相互調(diào)用函數(shù),以及如何傳遞參數(shù)與結(jié)果。一般的解決方法是在程序啟動時利用腳本的API向腳本注冊C++的擴展函數(shù)。

將函數(shù)指針傳遞給腳本系統(tǒng)以便將來調(diào)用,調(diào)用腳本函數(shù)則使用腳本系統(tǒng)的API將調(diào)用參數(shù)壓進棧,取得運行結(jié)果也要通過API進行。

Python 腳本簡介目前有許多第三方腳本語言可供直接使用,例如Tcl、Lua等等,本文要介紹的是Python 腳本Python已經(jīng)有超過十年的歷史,是一種解釋性的、面向?qū)ο蟮哪_本語言。Python的解釋器在大部分的操作系統(tǒng)上都可以運行,如Windows、Linux、Solaris、Mac 等。

詳細(xì)的語法說明請參考Python安裝包自帶的文檔,這里我只介紹一些常用的關(guān)鍵字與注意事項。Python沒有C++中的 { 和 } ,它使用縮進來代替。變量不需要單獨聲明,但不能引用未經(jīng)賦值的變量。

Python中引入了模塊的概念,類似C++中Library的概念。模塊可以包含函數(shù)、變量、類。一個腳本文件就是一個模塊,模塊在使用前需要導(dǎo)入,Python中沒有switch,使用if判斷代替:

  1. if ( num==1 ):  
  2.     print "1"  
  3. elif ( num==2 ):  
  4.     print "2"  
  5. else:  
  6.     print "unknown"  
  7.   while 是Python的一個循環(huán)語句。在while循環(huán)內(nèi)可以使用continue跳到下個循環(huán),使用break可以跳出整個循環(huán):  
  8. cnt = 5 
  9. while ( cnt > 0 ):  
  10.     print cnt  
  11.     cnt -1 
  12.   for 循環(huán):  
  13. list = ["test1", "test2", "test3"]  
  14. for str in list: 
責(zé)任編輯:chenqingxiang 來源: 清華大學(xué)出版社
相關(guān)推薦

2010-02-23 10:05:52

Python歷史

2010-02-24 14:04:32

Python腳本語言

2010-02-23 10:32:20

Python 腳本

2010-03-01 16:48:02

Python模塊

2010-02-05 18:00:18

Android源代碼

2010-02-06 15:32:30

Android架構(gòu)

2010-05-24 16:58:44

SVN安裝

2010-01-08 14:06:49

JSON 形式

2010-02-02 15:25:35

Python語法

2010-02-03 16:56:24

Python包

2010-03-01 14:50:06

Python 工具

2010-03-01 18:33:30

2010-02-07 15:42:46

Android單元測試

2010-01-27 09:31:39

C++Test測試

2010-01-27 15:50:23

C++復(fù)雜性

2010-02-02 13:22:06

Python面向?qū)ο?/a>

2010-02-03 09:35:20

Python函數(shù)編程

2010-02-03 11:26:28

2010-02-24 16:33:28

Python功能

2010-02-26 10:38:29

Python語言
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成年人在线播放 | 亚洲国产成人精 | 成人国产精品入口免费视频 | 91麻豆精品国产91久久久资源速度 | 国产成人精品999在线观看 | 国产黄视频在线播放 | 亚洲精品久久视频 | 亚洲一区视频在线 | 亚洲视屏 | 国产成人高清 | 久久999| 日本中文字幕在线观看 | 国产精品中文字幕在线观看 | 另类视频在线 | 91精品久久久久久久 | 欧美精品首页 | 色橹橹欧美在线观看视频高清 | 国产乱码精品一区二三赶尸艳谈 | 国产不卡在线观看 | 日日夜夜精品免费视频 | eeuss国产一区二区三区四区 | 91精品在线播放 | 99视频免费播放 | 黄色在线网站 | 九九免费观看视频 | 国产一级在线 | 91久久综合| 亚洲国产视频一区二区 | 天堂在线中文 | av片在线观看网站 | 成人av一区二区亚洲精 | 欧美精品久久久久 | 狠狠的操 | 伊人久麻豆社区 | 欧美激情一区二区 | 一区二区av | 久久99精品久久久久久狂牛 | 羞羞视频免费观 | 欧美视频精品 | av不卡一区| 精品免费国产视频 |