Added windows build support
This commit is contained in:
@@ -1,38 +1,26 @@
|
||||
[
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/home/yann/Projects/unreal/NpcChatbot/",
|
||||
"projectName": "NpcChatbot",
|
||||
"engineVersion": "5.5"
|
||||
},
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/home/yann/Projects/unreal/jsbsim/UnrealEngine/",
|
||||
"projectName": "UEReferenceApp",
|
||||
"engineVersion": "5.5"
|
||||
},
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/run/media/yann/Devel/Unreal/AeroSyncUFS",
|
||||
"enginePath": "D:/Devel/UE_5.7",
|
||||
"projectPath": "E:/unreal/AeroSyncFS/",
|
||||
"projectName": "MiniFS",
|
||||
"engineVersion": "5.5"
|
||||
"engineVersion": "5.7"
|
||||
},
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/run/media/yann/Devel/Unreal/CyberneticRequiem",
|
||||
"enginePath": "D:/Devel/UE_5.7",
|
||||
"projectPath": "E:/unreal/CyberneticRequiem/",
|
||||
"projectName": "CyberneticRequiem",
|
||||
"engineVersion": "5.5"
|
||||
"engineVersion": "5.7"
|
||||
},
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/run/media/yann/Devel/Unreal/DVRSimulator",
|
||||
"enginePath": "D:/Devel/UE_5.5",
|
||||
"projectPath": "E:/unreal/DVRSimulator/",
|
||||
"projectName": "DVRSimulator",
|
||||
"engineVersion": "5.5"
|
||||
},
|
||||
{
|
||||
"enginePath": "/home/yann/Apps/UE_5.5/",
|
||||
"projectPath": "/run/media/yann/Devel/Unreal/GunSpinningVR",
|
||||
"projectName": "GSPVR",
|
||||
"enginePath": "D:/Devel/UE_5.5",
|
||||
"projectPath": "E:/novelab/unreal/SNCF_Regiolis",
|
||||
"projectName": "SNCF_Regiolis",
|
||||
"engineVersion": "5.5"
|
||||
}
|
||||
]
|
||||
|
||||
2
ui.go
2
ui.go
@@ -28,7 +28,7 @@ func NewProjectRow(project Project) fyne.CanvasObject {
|
||||
}
|
||||
|
||||
icon := canvas.NewImageFromResource(projectIcon)
|
||||
icon.SetMinSize(fyne.NewSize(48, 48))
|
||||
icon.SetMinSize(fyne.NewSize(64, 64))
|
||||
|
||||
nameLabel := widget.NewLabel(projectName + " / Unreal Engine " + project.Version)
|
||||
nameLabel.Alignment = fyne.TextAlignLeading
|
||||
|
||||
54
utils.go
54
utils.go
@@ -71,33 +71,67 @@ func CleanUnrealProject(project Project) {
|
||||
}
|
||||
|
||||
func GenerateUnrealSolution(project Project) {
|
||||
var buildCmd string
|
||||
var cmd *exec.Cmd
|
||||
|
||||
projectFile := project.ProjectPath + "/" + project.ProjectName + ".uproject"
|
||||
|
||||
switch runtime.GOOS {
|
||||
case "linux":
|
||||
buildCmd = project.EnginePath + "/Engine/Build/BatchFiles/Linux/GenerateProjectFiles.sh"
|
||||
buildCmd := project.EnginePath + "/Engine/Build/BatchFiles/Linux/GenerateProjectFiles.sh"
|
||||
cmd = exec.Command(buildCmd, projectFile, "-game")
|
||||
|
||||
case "darwin":
|
||||
buildCmd = project.EnginePath + "/Engine/Build/BatchFiles/Mac/GenerateProjectFiles.sh"
|
||||
buildCmd := project.EnginePath + "/Engine/Build/BatchFiles/Mac/GenerateProjectFiles.sh"
|
||||
cmd = exec.Command(buildCmd, projectFile, "-game")
|
||||
|
||||
case "windows":
|
||||
editor := project.EnginePath + "\\Engine\\Binaries\\Win64\\UnrealEditor.exe"
|
||||
cmd = exec.Command(
|
||||
editor,
|
||||
projectFile,
|
||||
"-projectfiles",
|
||||
"-progress",
|
||||
"-waitmutex",
|
||||
"-NoHotReloadFromIDE",
|
||||
)
|
||||
|
||||
default:
|
||||
fmt.Println("Generate Project is not yet supported on Windows")
|
||||
fmt.Println("Generate Project is not supported on this platform:", runtime.GOOS)
|
||||
return
|
||||
}
|
||||
|
||||
projectCmd := project.ProjectPath + "/" + project.ProjectName + ".uproject"
|
||||
cmd := exec.Command(buildCmd, projectCmd, "-game")
|
||||
|
||||
logToOutput(cmd)
|
||||
}
|
||||
|
||||
func BuildUnrealSolution(project Project) {
|
||||
var cmd *exec.Cmd
|
||||
projectFile := project.ProjectPath + "/" + project.ProjectName + ".uproject"
|
||||
|
||||
switch runtime.GOOS {
|
||||
case "linux":
|
||||
cmd := exec.Command("make", "-C", project.ProjectPath, project.ProjectName)
|
||||
logToOutput(cmd)
|
||||
cmd = exec.Command("make", "-C", project.ProjectPath, project.ProjectName)
|
||||
|
||||
case "windows":
|
||||
buildBatch := project.EnginePath + "\\Engine\\Build\\BatchFiles\\Build.bat"
|
||||
target := project.ProjectName + "Editor"
|
||||
platform := "Win64"
|
||||
config := "Development"
|
||||
|
||||
cmd = exec.Command(
|
||||
buildBatch,
|
||||
target,
|
||||
platform,
|
||||
config,
|
||||
"-Project="+projectFile,
|
||||
"-WaitMutex",
|
||||
)
|
||||
|
||||
default:
|
||||
fmt.Println("Build Project is not yet supported on Windows")
|
||||
fmt.Println("Build Project is not yet supported on this platform:", runtime.GOOS)
|
||||
return
|
||||
}
|
||||
|
||||
logToOutput(cmd)
|
||||
}
|
||||
|
||||
func RunUnrealProject(project Project) {
|
||||
|
||||
Reference in New Issue
Block a user