Skip to content

Commit

Permalink
Merge pull request #5 from vsgopenmw-dev/psi29a-patch-1
Browse files Browse the repository at this point in the history
Update vsgopenmw-build.md
  • Loading branch information
psi29a authored Nov 6, 2023
2 parents bc23ceb + 4535998 commit 7d57d3c
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 19 deletions.
25 changes: 7 additions & 18 deletions vsgopenmw-build.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,21 @@
Which platforms does vsgopenmw support?
=======================================

vsgopenmw doesn't support platforms. By definition of a platform, it's the other way around: platforms support applications.

Which platforms support vsgopenmw?
==================================

vsgopenmw should appear in your Linux or FreeBSD package repository of choice soon. In the meantime, you can build vsgopenmw the usual cmake way on any platform that comes with a standards-compliant C++20 environment and Vulkan support. In addition to OpenMW's dependencies, you'll need VulkanSceneGraph-1.0.9 and vsgXchange installed the usual cmake way. OpenSceneGraph headers (not libraries) are still required for the time being.
Currently there are no releases or downloadable packages of vsgopenmw.

Which operating systems don't support vsgopenmw?
========================================

Windows doesn't support vsgopenmw because Windows is not a platform and is not standards compliant.
Where and how can I build vsgopenmw?
====================================

Mac OS X and iOS don't support vsgopenmw because they're not platforms and because Apple doesn't support Vulkan.
You can build vsgopenmw the usual cmake way on any platform that comes with a standards-compliant C++20 environment and Vulkan support. In addition to OpenMW's dependencies, you'll need VulkanSceneGraph-1.0.9 and vsgXchange installed the usual cmake way. OpenSceneGraph headers (not libraries) are still required for the time being.

Android doesn't support vsgopenmw because Android is not a platform.

How do I use vsgopenmw on an unsupporting operating system?
===================================================
How do I use vsgopenmw on an Linux-on-<OS> environment?
=======================================================

You can simply install a minimal version of Linux, also known as Linux-on-<OS> on top of your OS. You can get native performance with this method because Vulkan drivers load in userspace. To ease the process, vsgopenmw includes the VSGOPENMW_INDIRECT fall back to indirect rendering (not to be confused with software rendering) in case a direct Vulkan surface is not available.


Android
=======

Expand All @@ -30,8 +24,3 @@ Credit for this guide goes to Grima04 and the XDA-Developers community.
On Android, we can build and run vsgopenmw using Termux with no need for a PC or rooted device. Termux doesn't officially support hardware acceleration, but it provides a Vulkan loader library and that's all we need.

We can either use Termux' vulkan-loader-android to access the Android system's Vulkan driver or we can install a full proot-distro Linux system and use a self built driver with it (e.g. Freedreno-KGSL). For graphical output we can use XServer-XSDL, VNC or Termux-X11 in VSGOPENMW_INDIRECT mode. Direct rendering is yet to be explored.

Windows, Apple
==============

For the ethical and legal reasons described in vsgopenmw-code-of-conduct, instructions relating to these non-platforms won't be published here. Use vsgopenmw on these operating systems at your own peril.
6 changes: 5 additions & 1 deletion vsgopenmw-code-of-conduct.doc
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ vsgopenmw is Charityware. You can use and copy it as much as you like, but you

You are encouraged to use renewable electricity to run, build and develop vsgopenmw.

Linking vsgopenmw into unethical ("closed-source", "proprietary") software, made by profit-oriented, exploitative corporations is discouraged. Note that the terms of the GPL3, the license that OpenMW is based on, explicitly forbid linking into proprietary software under certain circumstances. If your envisioned use of vsgopenmw has any relation to a closed-source software or platform, please consult a lawyer first.
Linking vsgopenmw into unethical ("closed-source", "proprietary") software, made by profit-oriented, exploitative corporations is discouraged.

Note that the terms of the GPL3, the license that OpenMW is based on, explicitly forbid linking into proprietary software under certain circumstances.

If your envisioned use of vsgopenmw has any relation to a closed-source software, please consult a lawyer first.

You can also sponsor the development of vsgopenmw. vsgopenmw sponsors can vote for features. The money goes to charity anyway.

0 comments on commit 7d57d3c

Please sign in to comment.