The Cool Attention Grabbing Screenshot
The Rambling Preamble
With the upcoming SPVR game and SP 1.11 update, there's obviously a large focus on getting better cockpits to inhabit in the virtual realm, and the greater demands of VR rendering means we need to be careful with our part counts. It's been obvious for a long time that people want a better way to have holes in their fuselages for cockpits, bomb bays, landing gear bays, et cetera.
Lots of people have asked for the ability to "subtract" a hole from another fuselage, leaving a hole in it's place. This is a bit far fetched - it would be very complex in terms of the actual algorithm, and it would be difficult to get the collision geometry right. On the other hand, a very very common request is a half or quarter fuselage part. That sounds pretty simple, we could just start with half a block and change all the fuselage code to not care that half of it is missing. But it would be very restrictive in the actual kind of hole you could make in your planes. It wouldn't quite be good enough.
I've implemented what I hope is a strong mix of the two, somewhere between them. It slices the fuselage mesh up, deleting everything above the slice. This is like the mesh subtraction idea, but it's much simpler to write because you only have to consider the intersection with a flat, infinite planar surface. In addition, the use of VR APIs means we've upgraded to Unity 2020, which has some new tools like the Burst compiler - which this has been written to specifically leverage for extra speed. (Though it's only load-time speed so it's not that apparent)
The Actual Feature
What you'll see added to the game is a "Vertical Fill" slider in the fuselage section editor, alongside the width, height and corner type attributes. At it's default value of 100%, the entire fuselage is shown and no cutting is done. You can lower the fill on each end of the fuselage to provide a sloped cut, or set them to the same value for a flat cut. The fill is as a proportion of the fuselage's height, so connected fuselages with the same settings will match up on their faces. I think it's best illustrated with this little GIF:
As that demonstrates, it's particularly useful when combined with the hollow fuselage part. We do also plan to add a hollow glass fuselage part when we get around to it, so you can get the full benefit of that and use it to make a custom canopy too. Of course, it works on all the other fuselage types too, not just hollow. Hollow is just the coolest.
Just Plain (Plane) Flexing
Now it's show-off time, here's a super quick Cessna hull I made in 22 parts:
Maybe I'll finish it one day, take it flying in my headset. I'm more excited about this Westland Lynx (AH.7) I've been working on in my spare time to really push this feature to see what it can do:
Just the main hull so far, but hey, it's only 50 parts! That's a real strength of this feature, I think it's really going to help people get their part counts down. Kevin has also been using the feature for new versions of the stock crafts, and he had this to say about it: