Giter VIP home page Giter VIP logo

armorpaint's Introduction

armorpaint

ArmorPaint is a software for 3D PBR texture painting - check out the manual.

Note 1: This repository is aimed at developers and may not be stable. Distributed binaries are currently paid to help with the project funding. All of the development is happening here in order to make it accessible to everyone. Thank you for support!

Note 2: If you are compiling git version of ArmorPaint, then you need to have a compiler (Visual Studio - Windows, clang + deps - Linux, Xcode - macOS / iOS, Android Studio - Android), nodejs and git installed.

git clone --recursive https://github.com/armory3d/armorpaint
cd armorpaint
# Windows
node armorcore/make -g direct3d11
cd armorcore
# Unpack `v8\libraries\win32\release\v8_monolith.7z` using 7-Zip - Extract Here (exceeds 100MB)
git apply patch/window_handling.diff --directory=Kinc
node Kinc/make -g direct3d11
# Open generated Visual Studio project
# Set `Project - Properties - Debugging - Command Arguments` to `..\..\build\krom`
# Build for x64 & release
# Linux
node armorcore/make -g opengl
cd armorcore
node Kinc/make -g opengl --compiler clang --compile
cd Deployment
strip Krom
./Krom ../../build/krom
# macOS
node armorcore/make -g metal
cp -a build/krom/ armorcore/Deployment
cd armorcore
node Kinc/make -g metal
# Open generated Xcode project
# Add `path/to/armorpaint/armorcore/v8/libraries/macos/release` into `Project - Krom - Build Settings - Search Paths - Library Search Paths`
# Build
# Android - wip
node armorcore/make android -g opengl --shaderversion 300
cp -r build/krom/ armorcore/build/Krom/app/src/main/assets/
cd armorcore
node Kinc/make android -g opengl
# Manual tweaking is required for now:
# https://github.com/armory3d/armorcore/blob/master/kincfile.js#L68
# Open generated Android Studio project
# Build for device
# iOS - wip
node armorcore/make ios -g metal
cp -a build/krom/ armorcore/Deployment
cd armorcore
git apply patch/ios_document_picker.diff --directory=Kinc
node Kinc/make ios -g metal
# Open generated Xcode project
# Add `path/to/armorcore/v8/libraries/ios/release` into `Project - Krom - Build Settings - Search Paths - Library Search Paths`
# Build for device
# Windows DXR - wip
node armorcore/make -g direct3d12
cd armorcore
# Unpack `v8\libraries\win32\release\v8_monolith.7z` using 7-Zip - Extract Here (exceeds 100MB)
git apply patch/window_handling.diff --directory=Kinc
git apply patch/d3d12_raytrace.diff --directory=Kinc
git apply patch/d3d12_wrap_sampler.diff --directory=Kinc
node Kinc/make -g direct3d12 --raytrace dxr
# Open generated Visual Studio project
# Set `Project - Properties - Debugging - Command Arguments` to `..\..\build\krom`
# Build for x64 & release
# Linux VKRT - wip
node armorcore/make -g vulkan
cd armorcore
git apply patch/vulkan_raytrace.diff --directory=Kinc
git clone --recursive https://github.com/Kode/krafix Libraries/krafix
node Kinc/make -g vulkan --raytrace vkrt --compiler clang --compile
cd Deployment
strip Krom
./Krom ../../build/krom
# Windows VR - wip
node armorcore/make -g direct3d11 --vr oculus
cd armorcore
# Unpack `v8\libraries\win32\release\v8_monolith.7z` using 7-Zip - Extract Here (exceeds 100MB)
git apply patch/window_handling.diff --directory=Kinc
node Kinc/make -g direct3d11 --vr oculus
# Open generated Visual Studio project
# Set `Project - Properties - Debugging - Command Arguments` to `..\..\build\krom`
# Build for x64 & release
# Updating cloned repository
git pull origin master
git submodule update --init --recursive
# Delete `armorpaint/build` directory if present
# How to generate or update a locale file
pip install typing_extensions -t Assets/locale/tools
python ./Assets/locale/tools/extract_locales.py <locale code>
# Generated or updated in `Assets/locale/<locale code>.json`

armorpaint's People

Contributors

calinou avatar darkbox avatar eoin-oneill-yokai avatar luboslenco avatar oasis-mihal avatar piloegao avatar shiena avatar virtualritz avatar xephobia avatar xmx-emm avatar zoro-xu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.