Adam Johnson
29b03a5f08
|
10 months ago | |
---|---|---|
.github/workflows | 1 year ago | |
cmake | 1 year ago | |
installer | 3 years ago | |
korlib | 3 years ago | |
korman | 10 months ago | |
.editorconfig | 5 years ago | |
.gitignore | 5 years ago | |
CMakeLists.txt | 1 year ago | |
COPYING | 13 years ago | |
README.md | 3 years ago | |
build.ps1 | 2 years ago | |
release.ps1 | 3 years ago |
README.md
Korman
An open source, GPLv3 Blender addon for creating ages for Cyan Worlds' proprietary Plasma engine and its open source variant, CyanWorlds.com Engine. For more information, visit https://guildofwriters.org
Dependencies
- Blender - 3D modeling software
- libHSPlasma - Universal Plasma library used for manipulating data
- PhysX 2.6 SDK - optional, required only for exporting ages to the Myst Online: URU Live format with libHSPlasma.
Building
Korman is written primarily in Python and therefore requires little in the way of compiling. However, Korman
depends on the libHSPlasma Python bindings called "PyHSPlasma". Therefore, you will need to compile libHSPlasma
with python bindings for the platform of your choice. You will need to be certain that you use the same version
of Python that ships with your Blender install. Once you have done this, copy the HSPlasma library and PyHSPlasma
python library into Blender's python/lib/site-packages
.
See the installer directory for NSIS scripts. You can make a Windows installer by using makensis -DPYTHON_DLL=[pythonDllName] Installer.nsi
. Be sure to provide the Visual C++ redistributable and
libHSPlasma libraries. Prebuilt installers will be provided on the Guild of Writers website.
Installing
Copy the korman
directory into Blender's addons
directory. You must enable the addon in Blender's User
Preferences window. Korman is listed as a System addon. Switch the render engine to Korman and enjoy!
Zen of Korman
- Korman should be intuitive and discoverable.
- Mapping Korman features to Plasma features 1:1 is not desirable.
- Hide annoying details and make age building fun!
- Any Python traceback seen by the user is a bug.
- Korman is written in Python, not C. The code should reflect that fact.
- Avoid "it's better to ask for forgiveness"
try... except
blocks. - Spaces over tabs.
- Break lines around 100 columns (it's OK if your log message exceeds that however).