電腦遊戲製作開發設計論壇 首頁 電腦遊戲製作開發設計論壇
任何可以在PC上跑的遊戲都可以討論,主要以遊戲之製作開發為主軸,希望讓台灣的遊戲人有個討論、交流、教學、經驗傳承的園地
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 

Google
一個簡單的lua輔助庫

 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 程式概論
上一篇主題 :: 下一篇主題  
發表人 內容
還是零分
散播福音的祭司


註冊時間: 2007-09-19
文章: 164

652.83 果凍幣

發表發表於: 2015-3-7, AM 11:57 星期六    文章主題: 一個簡單的lua輔助庫 引言回覆

http://github.com/ToyAuthor/luapp

這個小工具寫好一段時間了
今天才終於上傳
承襲lua的簡約風格
luapp也長的簡單(樣板無法簡單,這我沒輒)
提供一個簡單的介面將C++的類別丟到lua裡面以table的形式出現

只提供CMake而已
改天再補Makefile

我對lua目前懂得不多
但是光是基本功能就已經很好用了
複雜的東西本來就該在C++這邊完成
lua只要管流程、做選擇就行了

可惜lua沒有namespace所以程式碼一大起來命名就不簡潔了
Squirrel也沒有支援namespace
這大概很耗效能所以搶快的腳本語言不想做吧?

我還會繼續寫將lua函式、全域變數引入C++的操作介面

各位可以提議添加其他功能
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
還是零分
散播福音的祭司


註冊時間: 2007-09-19
文章: 164

652.83 果凍幣

發表發表於: 2015-3-11, PM 8:16 星期三    文章主題: 引言回覆

剛剛想到
原本一個執行緒開一個lua state是不會有問題的
不過我寫的這東西沒考慮到這件事所以並非thread-safe
解決方法有想到
不過暫且先擱下忙其他事了
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
還是零分
散播福音的祭司


註冊時間: 2007-09-19
文章: 164

652.83 果凍幣

發表發表於: 2015-3-29, PM 9:22 星期日    文章主題: 引言回覆

執行緒問題算是用笨方法克服了
現在注意到新的缺點

讀過別人的做法之後
發現我在
Adapter.hpp
static int constructor(lua::Handle L){}
所寫的table建立方式並不好

這樣的寫法讓使用者在lua中宣告物件時會花費時間填成員函式
當成員函式越多
時間消耗的會越明顯
如果在lua中的迴圈不停宣告物件那就會消耗大量時間

要讓C++的類別轉進lua使用比我想像中的要麻煩
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 程式概論 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
可以 在這個版面附加檔案
可以 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作