Project XR2 Mesh Replacement Project

Matias Saibene

Developing and CMakin'
Donator
Joined
Jul 7, 2012
Messages
1,519
Reaction score
1,542
Points
128
Location
Monte Hermoso - Argentina
Website
github.com
Preferred Pronouns
he/him
Hello friends of Orbiter-Forum

As is public knowledge, the XR2 mesh currently has some copyright issues because the author mysteriously disappeared.
It is because of this situation that, for example, in Orbiter Linux, we cannot fly the XR2, because the mesh cannot be redistributed.

Some forum users raised the possibility of creating a new mesh for the XR2, and so I decided to carry out the project in my free time.

As far as I know, this could open the door to being able to fly the XR2 again in Orbiter Linux. And since the XR2 source code is available, the XR2 3D interactive cockpit project, UACS support, etc. could be carried out. In short, endless possibilities.

I have already started modeling the XR2 in Blender 3.3.9 (the latest version I can access with my modest laptop). And I plan to use Inkscape and GIMP for the textures.

I am attaching the 3D model of the ship up to where I got to, so you can see the progress, contribute ideas, and fix bugs. Soon, if you need it, I will open a GitHub repository. Please note that I cannot open Blender files older than 3.3.9. It is impossible for me.
-----------------------------------------------------------------------------
Note on vaporware:
Those who have seen my add-ons uploaded to Orbiter-Forum downloads will know that they are either incomplete, or do not work very well. Please note that I usually have several add-ons in development at once so as not to get bored, also I am not a professional programmer, and I try to help where I can.
Right now I am a bit stuck with Multistage2015, I am making some progress with the KleinVision AirCar, and I am going to improve the Boeing 747.

Thank you all very much for your patience.
 
Last edited:
I hate to be the guy who mentions this, given that I love the ship and have also recreated the XR2 mesh.

Remaking the mesh, even if it is completely from scratch, doesn't get you out of the copyright issue. The XR2 is still Coolhand's original design and even a "likeness" of it cannot be shared without permission.
One cannot use NIKE's logo and then say "But I painted it myself." The work would need to be transformative enough to be considered a "new" original (see XR3 Phoenix).

In my opinion (and I might be wrong), you shouldn't be sharing the mesh here. You can show pictures of your progress and do whatever you want for your own personal use, but sharing the mesh without permission is a no-no. To my knowledge, the only person that has permission to share (an encrypted version of) the mesh is dbeachy.

The only way I see around the copyright issue, given that the XR series code is open source, is to develop the thing that you want to develop for the XR2 (VC, more systems, etc) and then, if you intend to share it, encrypt the mesh.
Even so, it would get you into a "grey" area, but at least you wouldn't be "poisoning the well" too much.

Part edited out, because of misinformation. Read Doug's post below.

Anyway, that's my two cents. I've been wanting to share my own version of the XR2 for sometime now, but I've been "sitting on it" because I don't want to infringe on Coolhand's rights. I'd love to hear what others think about this.
 
Last edited:
As a heads-up, whether another mesh author would encrypt the replicated mesh they create or not is irrelevant to copyright law. Encrypting a replicated mesh doesn't change the fact that it's still replicated.

Also, the XR2's mesh is not encrypted in the XR2 2.0 download -- encryption is irrelevant now since the code that loads the XR2's mesh is now open-source via GPLV3. However, that does not change the XR2's mesh's (and textures) existing copyright, so until if and when Coolhand grants permission to release the mesh and textures under GPLV3 or something more permissive, the only way to legally (and ethically) download the XR2 mesh is via the XR2's binaries hosted here on Orbiter-Forum and linked from my Web site.

All this being said, you CAN still legally and ethically download and install the unmodified XR2 mesh in your Linux version of the XR code to run on your personal machine. You just can't repackage it and bundle it with a Linux version of the XR codebase, for example. But, individual Linux Orbiter users could still download the XR2 binaries from here and manually copy the XR2's mesh into their Linux Orbiter folder and use the mesh that way.

To sum up, the key points to comply with the XR2's copyrighted mesh license in this case are:
  1. You can only download the XR2's mesh via its official binary zip file (since Coolhand only gave me permission to redistribute the mesh),
  2. You cannot redistribute the XR2's mesh or textures separately (this ties into #1 above), and
  3. You CAN use the XR2's mesh on your own personal machine however you wish, including running that unmodified mesh in your Orbiter version of Linux with a Linux-compiled version of the XR codebase.
One more thing as a side note: even if recreating the XR2's mesh to match its shape was legal (which it's not), you would still have to recreate the mesh exactly, including all its animated surfaces, using the exact same dimensions, coordinates, and named mesh groups, because otherwise the animations would not work correctly. In other words, you would have to clone the XR2's mesh exactly in order for it to work with the existing XR2 C++ code. So the whether the mesh was recreated by hand or cloned from the existing mesh is irrelevant at that point -- both still violate the mesh copyright equally.
 
As a heads-up, whether another mesh author would encrypt the replicated mesh they create or not is irrelevant to copyright law. Encrypting a replicated mesh doesn't change the fact that it's still replicated.

Also, the XR2's mesh is not encrypted in the XR2 2.0 download -- encryption is irrelevant now since the code that loads the XR2's mesh is now open-source via GPLV3. However, that does not change the XR2's mesh's (and textures) existing copyright, so until if and when Coolhand grants permission to release the mesh and textures under GPLV3 or something more permissive, the only way to legally (and ethically) download the XR2 mesh is via the XR2's binaries hosted here on Orbiter-Forum and linked from my Web site.

All this being said, you CAN still legally and ethically download and install the unmodified XR2 mesh in your Linux version of the XR code to run on your personal machine. You just can't repackage it and bundle it with a Linux version of the XR codebase, for example. But, individual Linux Orbiter users could still download the XR2 binaries from here and manually copy the XR2's mesh into their Linux Orbiter folder and use the mesh that way.

To sum up, the key points to comply with the XR2's copyrighted mesh license in this case are:
  1. You can only download the XR2's mesh via its official binary zip file (since Coolhand only gave me permission to redistribute the mesh),
  2. You cannot redistribute the XR2's mesh or textures separately (this ties into #1 above), and
  3. You CAN use the XR2's mesh on your own personal machine however you wish, including running that unmodified mesh in your Orbiter version of Linux with a Linux-compiled version of the XR codebase.
One more thing as a side note: even if recreating the XR2's mesh to match its shape was legal (which it's not), you would still have to recreate the mesh exactly, including all its animated surfaces, using the exact same dimensions, coordinates, and named mesh groups, because otherwise the animations would not work correctly. In other words, you would have to clone the XR2's mesh exactly in order for it to work with the existing XR2 C++ code. So the whether the mesh was recreated by hand or cloned from the existing mesh is irrelevant at that point -- both still violate the mesh copyright equally.

Oh my God, if only I had known this before!

I didn't know that there was a possibility to re-mesh the XR2 on Linux. That changes everything for me.

I had actually thought of two options, making a faithful approximation of the original XR2, or making a new XR2 (even more streamlined). But now that I know that it can be re-installed on Linux, I'll stop modeling the XR2.

Thanks for letting me know.

:cheers: :hailprobe:
 
@Matias Saibene @dbeachy1 How about you simply join forces? @dbeachy1 stays package maintainer and controls the distribution of binary packages and game assets (and thus staying faithful to the copyright for now), and @Matias Saibene assists in developing and maintaining a native Linux binary, which could be provided for download by @dbeachy1.

Yes, its not a solution good enough for open-source zealots. But its IMHO a good compromise that respects all stakeholders.
 
Maybe this would be a good time to resurrect the XR3 Phoenix and XR4 Nyx projects. I believe the authors of those meshes are still at least somewhat active on the forums and would probably grant permission to "pass on the torch" so to say.

May I still push my idea for a XR0 project? A small vacuum-only spacecraft, that shares capabilities like passenger and cargo capacity with the XR2, but drops the aerodynamic shape and wings for a more compact shape, ideally so much that one or two can be transported with some cargo inside a XR5. Maybe still good for landing on moons or asteroids. Maybe even split in two versions: XR0 with only RCS thrusters and XR0+ with two XR2 main engines.

The reentry heating and damage code should stay, but get far less protection and lower limits, so you can still try gentle aerobreaking maneuvers, but not push it too much.

Design-wise, I would suggest a really functional, non-aerodynamic and maybe even a bit asymmetric shape.
 
@Matias Saibene @dbeachy1 How about you simply join forces? @dbeachy1 stays package maintainer and controls the distribution of binary packages and game assets (and thus staying faithful to the copyright for now), and @Matias Saibene assists in developing and maintaining a native Linux binary, which could be provided for download by @dbeachy1.

Yes, its not a solution good enough for open-source zealots. But its IMHO a good compromise that respects all stakeholders.
Great idea!

If @dbeachy1 wants, I can produce an XR2 installation package for Linux (using CMake). It's very easy. I just need explicit permission from @dbeachy1. And I'd provide him with a .zip file so he can upload it to Orbiter-Forum downloads.
 
The work would need to be transformative enough to be considered a "new" original
A question: if Coolhand never gets in touch, who in this community is authorized to determine the "transformative enoughness" of the work in order to consider it as original?
In short, who is the judge in this case if not Coolhand himself? What is the acceptable borrowing rate?
 
A question: if Coolhand never gets in touch, who in this community is authorized to determine the "transformative enoughness" of the work in order to consider it as original?
In short, who is the judge in this case if not Coolhand himself? What is the acceptable borrowing rate?
How much difference is enough to be considered a work of your own, is usually left to the judges in a copyright case.

Rule of thump:
If the new files are identical to the old ones, its not your own.
If the new files are only a small edit of the metadata, its not your own.
If your edits only change a small part of the original work (Like only a texture! ), its not your own.
If your own contributions are impossible to produce without the original work files, its not your own. (Think about just rescaling or distorting the original mesh there)

Think about reskinning there. The mesh stays the work of somebody else, but if your new textures is really a substantial change to the old texture, the skin is your own artistic work, too., The original add-on maker can't just distribute your reskinning mod with his own add-on without asking you and you can't distribute the full original add-on within your skin without permission.

If you want to play safe there, simply create a XR2 mesh that looks completely different to the original. If you need an inspiration: How would a Soviet "XR2-sky" copy of it look like?
 
A question: if Coolhand never gets in touch, who in this community is authorized to determine the "transformative enoughness" of the work in order to consider it as original?
In short, who is the judge in this case if not Coolhand himself? What is the acceptable borrowing rate?

That's where good faith comes in. In the end, it's a subjective call by the community (and ultimately, by the copyright holder themselves, Coolhand in this case), although it should be obvious one way or the other in most cases. For example, if the new mesh works with the existing code (same animation coordinates, etc.), then obviously it's a clone even if there were some cosmetic alterations.

EDIT: Urwumpe summed it up nicely in the post above.
 
So, you want to say, that if someone's work has even, for example, 0,01% part of the original work, it's a violation too?
And it turns out if you create a completely new mesh for XR2, then the source code must be completely rewritten, since the existing one is suitable ONLY for CoolHand's XR2 mesh?
 
Great news!
This project is no longer needed because together with @dbeachy1, we are working on bringing XR2 back to Linux.

We need volunteers to test XR2 on Linux (no Wine, only native OpenOrbiter).
 
I wanted to mention something on the subject of reaching out to Coolhand. I'm a bit hesitant to share this, but here goes.

About a year ago, I was able to find an old email address from his website (archived) and emailed him. I got a pretty prompt response, but it wasn't really what I was expecting, and it wasn't very friendly. It's far beyond my business to know more or reasons why, and it would be inappropriate for me to share. I only share this because I very much doubt that the mesh will ever be released under any kind of free-software license.

The only way for a fully GPL XR2 to exist is with the creation of a fully original, non-derivative mesh. as Urwumpe stated.
 
So, you want to say, that if someone's work has even, for example, 0,01% part of the original work, it's a violation too?

No, because how would anyone even detect that? :) Urwumpe's post summed it up.

And it turns out if you create a completely new mesh for XR2, then the source code must be completely rewritten, since the existing one is suitable ONLY for CoolHand's XR2 mesh?

The source code wouldn't completely need to be rewritten, only the parts that animate the mesh, etc. -- simply because the code wouldn't work to animate any mesh parts whose coordinates have changed. In Orbiter, the coordinates of mesh parts to animate and the vector to animate them must be hardcoded into the source code. So for any animated parts of the mesh that change, the animation won't work correctly: the parts would animate in bizarre ways, if at all. And if the new mesh doesn't change the mesh enough such that animated parts change coordinates and shape, then it's clearly a derived mesh and therefore violates Coolhand's license anyway.

Again, it all comes down to good faith, which is what we (the community) are striving to uphold here.
 
Last edited:
@n72.75 Thank you so much for saying this here!
In this case, the issue of permission from Coolhand can be considered finally closed, and I 'm sure it is safe to say that permission will never be granted.
One more big "unknown" has been removed!
 
Back
Top