RadialGM: Difference between revisions

From ENIGMA
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 5: Line 5:
'''GitHub Repository''': https://github.com/enigma-dev/RadialGM<br>
'''GitHub Repository''': https://github.com/enigma-dev/RadialGM<br>


== License ==
=== License ===
The project is also licensed under the same [[License]] ENIGMA is licensed under, that being a modified GPL v3.
The project is also licensed under the same [[License]] ENIGMA is licensed under, that being a modified GPL v3.


== Features ==
=== Features ===
The goal of this project as stated earlier is to improve upon the ENIGMA UI experience, stability, and scalability.
The goal of this project as stated earlier is to improve upon the ENIGMA UI experience, stability, and scalability.


Line 20: Line 20:
* Dock interfaces and widgets allowing custom layouts with persistent state between sessions
* Dock interfaces and widgets allowing custom layouts with persistent state between sessions


== Building ==
=== Installing (Building) RadialGM on Windows===
=== Windows ===


'''To Start'''
==== To Start ====


You must first follow the instructions on installing ENIGMA (using the Msys2 method) up to the point of cloning ENIGMA, you don't need to run the clone demand for ENIGMA or anything after that as the Radial git clone you're about to to will include ENIGMA (https://enigma-dev.org/docs/Wiki/Install:Windows)
* You must first follow the instructions on installing ENIGMA (using the Msys2 method) up to Step3: Downloading ENIGMA, you don't need to download ENIGMA or anything after that as the Radial git clone you're about to to will include ENIGMA (https://enigma-dev.org/docs/Wiki/Install:Windows)


'''Update your MSYS2 installation'''
==== Update your MSYS2 installation ====


This is needed to get an updated version of Qt
* This is needed to get an updated version of Qt
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
pacman -Syu
pacman -Syu
</syntaxhighlight>
</syntaxhighlight>


This may prompt you to close the terminal, reopen it, and run the command a second time. The first time it updates the package manager, the second time it updates everything else.
'''NOTE:''' This will likely prompt you to close the terminal, reopen it, and run the command a second time. In this case close the window, force close it even if it warns you that it's still running. Then reopen Msys2 and run pacman -Syu again. The first time it was updating the package manager, the second time it updates everything else.


'''Install RadialGM build tools''' (in msys2 shell)
'''Install RadialGM build tools''' (in msys2 shell)

Revision as of 08:57, 11 June 2019

ENIGMA's C++ IDE in use with native look and feel on Windows 10.

The project is a code name used to refer to the C++/Qt-based ENIGMA IDE that is being developed. The project was started by Goombert to improve ENIGMA's UI experience and the stability of game serialization. The architecture of the project is loosely based on MVC and MVVM and is centered around the ENIGMA compiler's Google Protocol Buffer format used in emake and libEGM to load, save, and compile games. The Google Protocol Buffer format is treated as the single source of truth for resource data and is contained in a Qt QAbstractItemModel that makes it possible to map various views/editors to it.

GitHub Repository: https://github.com/enigma-dev/RadialGM

License

The project is also licensed under the same License ENIGMA is licensed under, that being a modified GPL v3.

Features

The goal of this project as stated earlier is to improve upon the ENIGMA UI experience, stability, and scalability.

Some advantages the new IDE will provide:

  • Custom theming using Cascading Style Sheets
  • Hardware accelerated rendering
  • Runs natively among other optimizations
  • Improved compile times
  • Ability to handle much larger project files
  • Advanced code editing including break points and code folding
  • Dock interfaces and widgets allowing custom layouts with persistent state between sessions

Installing (Building) RadialGM on Windows

To Start

  • You must first follow the instructions on installing ENIGMA (using the Msys2 method) up to Step3: Downloading ENIGMA, you don't need to download ENIGMA or anything after that as the Radial git clone you're about to to will include ENIGMA (https://enigma-dev.org/docs/Wiki/Install:Windows)

Update your MSYS2 installation

  • This is needed to get an updated version of Qt
pacman -Syu

NOTE: This will likely prompt you to close the terminal, reopen it, and run the command a second time. In this case close the window, force close it even if it warns you that it's still running. Then reopen Msys2 and run pacman -Syu again. The first time it was updating the package manager, the second time it updates everything else.

Install RadialGM build tools (in msys2 shell)

64 bit

pacboy -S mingw-w64-x86_64-qt-creator
pacboy -S qscintilla:x
pacman -S mingw-w64-x86_64-clang

32 bit

pacboy -S mingw-w64-i686-qt-creator
pacboy -S qscintilla:i
pacman -S mingw-w64-i686-clang

Get RadialGM source code (in MinGW Shell)

cd put_here_whatever_directory_you_want_RadialGM_to_be
git clone https://github.com/enigma-dev/RadialGM.git --recursive

Build RadialGM ENIGMA submodule

cd RadialGM/Submodules/enigma-dev
make
make emake CLI_ENABLE_SERVER=TRUE

Run Protocol Server

./emake.exe --server --quiet

Open RadialGM project in Qt Creator

cd ~/RadialGM
qtcreator ./RadialGM.pro


Configuring Qt Creator

By default, Qt Creator should open up with the "Projects" tab open (from the left hand side). Select it if not.

Click the "Configure Project" button on the right.

From the main menu, Build -> Run

See Also