功能效果展示
運行環境
Win7,Win8,Win10
Reworld版本 體驗版
vc_redist.x64 運行環境
針對零基礎讀者的補充
下載安裝 Reworld對應版本
Reworld官網鏈接:http://www.reworlder.com/
Reworld創作者之家論壇:http://bbs.reworlder.com
下載後安裝後註冊賬號打開空地圖
下載安裝 vc_redist.x64.rar運行環境
思路分析
想要實現在物體的表面任意位置生成物塊的功能,我們可以通過攝像機向點擊點發一個射線,在點擊點的座標出創建一個零件,就可以實現這樣的效果。
功能搭建
一、底板搭建過程
1.在工作區內創建一個零件,將其錨定,修改零件的屬性作爲生成物體的底板。零件的屬性如下圖所示:
二、核心功能搭建過程
在玩家初始化,玩家初始化腳本里創建一個客戶端腳本。如下圖所示:
編寫客戶端腳本如下:
local function MyUpdate() --定義一個事件
local ray = WorkSpace.攝像機:ScreenToRay(Mouse.MousePosition) --獲取點擊點座標
local e,p,n = WorkSpace:FindObjOnRay(ray)
if e~=nil then
local part = RWObject.Create("Part") -- 創建零件
part.Position = p + Vector3(0,e.Scale.y,0) --給零件的座標賦值
end
end
Mouse.MouseButtonLeftDown:Connect(function() --鼠標左鍵點擊時觸發事件
MyUpdate()
end)
補充說明
1.什麼是工作區?
工作區中的對象是會被可視化顯示到3D場景中的,並且只有在工作區中的對象纔會發生物理交互。
2.什麼是客戶端腳本?
只會在客戶端執行的腳本,執行的邏輯和表現也只會在本地客戶端展現;可在以下幾個文件目錄下自動執行,客戶端腳本在“工作區”下不會自動執行,需要放在以下對象裏面:
1. 客戶端最先加載 。
2. 工作區中的角色模型。玩家初始化中的角色初始化腳本,在運行後會自動移動到角色模型下。
3. 玩家列表中的玩家。玩家初始化中的玩家初始化腳本,在運行後會自動移動到玩家下
4. 玩家的玩家界面。界面初始化的腳本,在運行後會自動移動到玩家界面下。
5. 玩家的揹包,例如工具裏面的。
好了,接下來我們開始遊戲,我們鼠標點擊的位置就會生成一個零件啦。如果有什麼問題或者有更好的實現方式,大家可以在下方積極交流討論,我們也會參與進來和大家一起分享經驗,期望能和大家共同進步~~