2014-09-04 75 views
2

我打算在Unity3D中開發一款遊戲。作爲unity IDE提供的開發語言,我沒有選擇是否將使用javascript,c#腳本或boo。在unity3d中創建本地數據庫

在我的遊戲中,我需要存儲遊戲狀態:用戶名,等級,遊戲移動,當前狀態,點和所有應該保存的內容。 我想讓用戶在某個特定的時間內保存遊戲,並且可以說在幾小時後,當他想要繼續遊戲時,他將能夠從他停止的位置加載遊戲。

所以我知道也許我需要2個表,一個用於用戶數據,以及其他表中的每個遊戲 - 保存遊戲狀態..

,但我想知道是否有任何選項向Unity添加本地數據庫?

我看到這個tutorial介紹如何以保存遊戲狀態序列化對象..但我不知道這是否會回答我的遊戲需要

回答

5

你可以看一下this unity answer一些幫助使用sqlite的。

但是在大多數情況下,我會使用序列化而不是本地數據庫。

數據庫的優點是您可以輕鬆搜索數據。

序列化的好處是你可以按你想要的方式創建你的類結構,只需保存/加載它,而不需要適配器和解析。

我會使用數據庫,如果我有很多數據,如數千行。或者,如果我的數據有複雜的關係,也就是說大量的表格與它們之間的關係。否則,我認爲使用序列化更簡單,工作量更少。

+0

我明白了,我想要保存的是遊戲狀態。 你看,我的遊戲是3d俄羅斯方塊,可以說如果你玩遊戲,15分鐘後你需要做一些比玩遊戲更重要的事情,你可能想要保存遊戲,動作,物體位置,點,日期,水平,在一個給定的名稱權?所以這是我需要存儲或保存的數據,我認爲序列化會是一個很好的方式,但問題是它需要連接到「播放器數據」否? SQLITE不是免費的..我不想爲一個項目付出很多錢。 – Elior 2014-09-05 12:36:51

+0

什麼是「播放器數據」,它是如何存儲的?另外大多數數據庫服務器在你的統一遊戲之外花費或者需要額外的設置,這對你來說可能是麻煩的。 – Imapler 2014-09-05 14:43:38

+0

我正在考慮有2個表,一個表來存儲玩家數據:名稱,遊戲日期,current_points,game_num 和其他表將game_moves,objects_position。 所以如果我點擊「加載遊戲」,它會顯示我保存他們的遊戲的玩家列表,當我選擇一些玩家,我得到他所有保存的遊戲..然後加載它 – Elior 2014-09-05 22:09:47

相關問題