Project So... I've decided to make an addon

sweet, anim8or was stopping me from making add-ons. Dling blender now. BTW, if making spacecraft is to hard for you, you can always reskin existing vessels, and make surface bases. Thats what i'm doing right now for REDAC Aerospace - my fictional aerospace comp. Aaaaaaaaaand I'm done with this post. Toodles!
 
When rotating thats not a problem, you only need 1 set to rotate if its in the right place... a nudge at the stern on one side will push the bow in the opposite direction around the centre of mass for example.

if you want to translate though you need 2 sets... or one thruster aligned with the centre of mass.
Ah poo, you're right. Forgot the translation thrusters. :fool: I'll fix that.

As far as modelling goes, I will need to add the OMS and maybe some solar panels, but then aside from textures I will be done with that aspect.

I plan on writing a custom .dll for the spacecraft but don't expect anything too fancy. I've just now started learning C++. Basically all I will need to do is define the thrusters and aerodynamics and then see if I can gut out an animation sequence for the inflatable heat shield.

I intend to add a simple surface base on the equator and to create an inflatable space station in geo-synchronous orbit so that the passengers/cargo have somewhere to go.

Launch will be by the Delta IV launch vehicle (8 SRMs) as provided in sputnik's velcro EELV's addon.
 
There has been (yet another) redesign. You never end up with what you originally planned, I suppose.

The inflatable heat shield is no longer inflatable. It is in a fixed position. I have doubled the number of RCS thrusters, which now extend and retract in order to poke out from behind the large heat shield. Four OMS engines have been added.


newunity.jpg



I've named it the Unity. Not sure why. The name just sort of popped into my head and I liked it.

I am working on a texture, but there has been a bit of a problem in that regard that I hope will be ironed out... I think this is my first and last addon with anim8or. ;)

The .dll is underway, but it will take some time.
 
Well, I've run into another problem. I've decided to leave the texture department alone for now. I have attempted to make my own textures and apply them, but every time they have turned out horrendous in an irreversible manner. I will probably need to consult help from a third party on this one.

My biggest issue right now is trouble with converting the .3ds into a mesh. It is simply not happening and vinka's 3ds2mesh seems to have a strong desire to not work. Not sure what's happening there. I click the run file and I always run into the "press any key to continue", which of course terminates the program no matter what I do.

I can't start defining thrusters and such without a proper mesh, so this is a roadblock. Is there anyone out there who can help clear this up for me?
 
Um, if you're using my batch file, you do know that you have to name the file you're trying to convert as "input.3ds." It should leave you with an "output.msh" file.
 
Um, if you're using my batch file, you do know that you have to name the file you're trying to convert as "input.3ds." It should leave you with an "output.msh" file.
Yours was the 3ds2mesh for anim8or, correct? I downloaded it and ran and found a perfectly good output.msh. Maybe vinka's 3ds2mesh has been doing the same thing as well and I've been blind. Either way the culprit was ignorance on my part.

The mesh is still oriented incorrectly, but nothing I can't fix.

Now my attention turns to scaling. I have used the Shipedit program and it has helped clear a few things up, but otherwise I'm still lost in a fog in terms of how to scale this thing. In comparison with francisdrake's CEV-E CM, it appears to be very large, but ar81's Mesh Wizard needs to zoom in about 1000% to see it.
 
Well, I've run into another problem. I've decided to leave the texture department alone for now. I have attempted to make my own textures and apply them, but every time they have turned out horrendous in an irreversible manner. I will probably need to consult help from a third party on this one.

My biggest issue right now is trouble with converting the .3ds into a mesh. It is simply not happening and vinka's 3ds2mesh seems to have a strong desire to not work. Not sure what's happening there. I click the run file and I always run into the "press any key to continue", which of course terminates the program no matter what I do.

I can't start defining thrusters and such without a proper mesh, so this is a roadblock. Is there anyone out there who can help clear this up for me?



Start ===> Run ===> Write "cmd" (no quotes) and hit enter ===>
cd to where your 3ds2ms is:
(cd - change directory)
You're probably gonna start in
C:\Documents and Settings\Your_User_Folder

If your 3ds2msh is on C:\, use cd.. to switch to previous folder...

cd.. ===> C:\Documents and Settings ===> cd.. ===> C:\

if it is in My Documents (or desktop or anywhere else)
from C:\Documents and Settings\Your_User_Folder ===> cd Desktop

Then once you're at location where your 3ds2msh is:

3ds2msh i=Your_Input_File.3ds o=Your_Output_File.msh

Additionally, 3ds2msh help command will display all the possible commands.



Nice work with the model. Looks good :)

Although I'm afraid that you won't be able to translate in space.

Because both of your RSC thrusters are behind the center of gravity, the torque produced by each one won't cancel out the other one and you will rotate.

You'll need to position one thruster group on the nose, equal distance from the CoG as the back one is.
You can just use draw the RSC thrusters onto a texture.
 
The mesh is still oriented incorrectly, but nothing I can't fix.
Now my attention turns to scaling.

Best way to scale and oriented model is with anim8or.

Ship nose has to face up...look on photo,it's ready position for export.
And by the way see a sign,it turned,when is converter to mash in Orbiter than take a normal turn.

clipboard02cq2.jpg
 
The batch file I created should automatically rotate the mesh from Anim8or's orientation to Orbiter's assuming you've got the mesh so that the front points along Anim8or's +Z axis and its up is +Y in Anim8or.
 
Although I'm afraid that you won't be able to translate in space.

Because both of your RSC thrusters are behind the center of gravity, the torque produced by each one won't cancel out the other one and you will rotate.

You'll need to position one thruster group on the nose, equal distance from the CoG as the back one is.
You can just use draw the RSC thrusters onto a texture.
I was afraid of that, but it shouldn't be too much of a problem. I suppose I could either create another retractable set, though that would require modelling opening doors and such, so I will draw RCS textures and see how it looks.
The batch file I created should automatically rotate the mesh from Anim8or's orientation to Orbiter's assuming you've got the mesh so that the front points along Anim8or's +Z axis and its up is +Y in Anim8or.
In that case my mesh is probably upside down in anim8or. I'll work on it.

Now I'm off to the dentist. :axehead:
 
Okay, the mesh is looking good. I've done all the necessary scaling in the Shipedit utility.

Now, my attention turns to textures. As of now my only concern is the docking port. What is the default docking port texture as used by the Delta Glider? And is there anyway I can change the dds format in order to load it into anim8or?


-----Posted Added-----


Nevermind, I found a free dds to bmp converter and I'm as happy as a pig in poo. I've put some of the default ISS textures onto the model...


unity_text1.jpg




unity_text2.jpg



Not perfect, perhaps, but it's looking a lot better.

I'm going to add some windows and a forward RCS group later.
 
In the past few days I've discovered that texturing with anim8or is a bit trickier than I expected. So I've decided to add a forward RCS group that is more or less identical to the set in the rear. This RCS group will obviously burn up during re-entry, but the ballute will protect of everything else.

I've made a few cosmetic tweaks (added more foil insulation in the rear) and decided not to add windows, but otherwise things are progressing slowly.

The .dll is slowly coming along. I've merely taken the default Shuttle PB module and am making modifications as needed.

The vessel seems to be lacking any and all fuel tanks or engines upon being created in a scenario, but the .dll isn't quite finished yet.

This is what I have so far. Can someone please scan over and see if anything needs fixing? (I've yet to begin defining MEs or the RCS). Oh, and I was intimidated by the lift coefficient section, I should probably get into tweaking it.

Code:
#define STRICT
#define ORBITER_MODULE

#include "orbitersdk.h"
#include "ScnEditorAPI.h" 

// ==============================================================
// Some vessel parameters
// ==============================================================
const double UNITY_FUELMASS = 7000.0;
const double UNITY_ISP = 3840;
const double UNITY_MAXMAINTH = 12000;  //N
const double UNITY_MAXRCSTH = 9000;

// Calculate lift coefficient [Cl] as a function of aoa (angle of attack) over -Pi ... Pi
// Implemented here as a piecewise linear function
double LiftCoeff (double aoa)
{
    const int nlift = 9;
    static const double AOA[nlift] = {-180*RAD,-60*RAD,-30*RAD,-1*RAD,15*RAD,20*RAD,25*RAD,60*RAD,180*RAD};
    static const double CL[nlift]  = {       0,      0,   -0.1,     0,   0.2,  0.25,   0.2,     0,      0};
    static const double SCL[nlift] = {(CL[1]-CL[0])/(AOA[1]-AOA[0]), (CL[2]-CL[1])/(AOA[2]-AOA[1]),
                                      (CL[3]-CL[2])/(AOA[3]-AOA[2]), (CL[4]-CL[3])/(AOA[4]-AOA[3]),
                                      (CL[5]-CL[4])/(AOA[5]-AOA[4]), (CL[6]-CL[5])/(AOA[6]-AOA[5]),
                                      (CL[7]-CL[6])/(AOA[7]-AOA[6]), (CL[8]-CL[7])/(AOA[8]-AOA[7])};
    for (int i = 0; i < nlift-1 && AOA[i+1] < aoa; i++);
    return CL[i] + (aoa-AOA[i])*SCL[i];
}

// ==============================================================
// Unity class interface
// ==============================================================

class Unity: public VESSEL2 {
public:
    Unity (OBJHANDLE hVessel, int flightmodel)
        : VESSEL2 (hVessel, flightmodel) {}
    void clbkSetClassCaps (FILEHANDLE cfg);
};

// ==============================================================
// Overloaded callback functions
// ==============================================================

// --------------------------------------------------------------
// Set the capabilities of the vessel class
// --------------------------------------------------------------
void Unity::clbkSetClassCaps (FILEHANDLE cfg)
{
    THRUSTER_HANDLE th_main[4], th_rcs[16], th_group[4];  //no hover engines, 4 MEs

    // physical specs
    SetSize (4); //radius ~4m, not visually, but for aerodynamics purposes
    SetEmptyMass (14000); //14000 kg without fuel
    //AddMesh (oapiLoadMeshGlobal ("Unity.msh")); PB module not the same syntax as documentation, mesh defined below
    SetCW (0.3, 0.3, 0.6, 0.9);
    SetWingAspect (0.5); //assuming that the fixed ballute provides some degree of lift
    SetWingEffectiveness (1.5); //see above note
    SetCrossSections (_V(10.5,15.0,5.8)); 
    SetRotDrag (_V(0.6,0.6,0.35));
    SetPMI (_V(2.28,2.31,0.79));
    SetTrimScale (0.0); //no trim available
    SetCameraOffset (_V(0,0.8,0));
    SetLiftCoeffFunc (LiftCoeff);
    SetDockParams (_V(0,0,-3.037422), _V(0,1,0), _V(0,0,-1)); //docking port is at the rear
    SetTouchdownPoints (_V(0.0,-0.5759583,1.291359), _V(-0.515331,0.5880836,1.291359), _V(0.5274567,0.5759581,1.291359)); //touchdown points are directly on the nose (splashdown face-forward)

    // propellant resources
    PROPELLANT_HANDLE hpr = CreatePropellantResource (UNITY_FUELMASS);
 
See this:

Code:
[FONT=monospace]
[/FONT]PROPELLANT_HANDLE hpr = CreatePropellantResource (UNITY_FUELMASS);
This creates a fuel tank and stores it in memory, providing a pointer.

This will create an engine:

Code:
CreateThruster(_V(-14, 0, -24), _V(0, 0, 1), UNITY_MAXMAINTH, hpr, UNITY_ISP);
The first vector is the position, second vector is orientation, third argument is max thrust, then comes your propellant handle and last off is the specific impulse.

Open the API guide and API reference in your doc folder and DeltaGlider's source code. That's gonna help you a lot.
 
See this:

Code:
[FONT=monospace]
[/FONT]PROPELLANT_HANDLE hpr = CreatePropellantResource (UNITY_FUELMASS);
This creates a fuel tank and stores it in memory, providing a pointer.

This will create an engine:

Code:
CreateThruster(_V(-14, 0, -24), _V(0, 0, 1), UNITY_MAXMAINTH, hpr, UNITY_ISP);
The first vector is the position, second vector is orientation, third argument is max thrust, then comes your propellant handle and last off is the specific impulse.

Open the API guide and API reference in your doc folder and DeltaGlider's source code. That's gonna help you a lot.
Thanks, Rising. The PB code is sparse and the syntax/structure is different in a few respects from that of the API Guide, but I felt intimidated by the animation sequences of the dg code. I may go ahead and take a look at it, though.

Do the current textures look tolerable or would anyone be partial to a different skin?
 
I've found some additional inspiration:


lunarexpo.jpg



It wouldn't take much to make this project "moon worthy". I will of course need to make modifications to the mesh and figure out how I am going to expand the delta-v budget, but I think it would be worth it.

And I'm still not happy with the textures... :dry: Maybe I can find some sort of texture-making tools out there somewhere.

EDIT: By the way, the above shot is from t/space's proposal for VSE architecture. Kodiak created a CXV based on their proposal.
 
This may be inconvenient, but I've switched modeling software. I decided to take a look at Sketchup and I was pleased at how easy and versatile it is.


novaunity.jpg



It's going to be a lot heavier than originally planned, obviously. Dry mass is 11,400 kg. Propellant mass is 28,600 kg. Therefore, gross weight will be 30,000 kg. Some .dll modifications may be in order...

Also, since this craft is designed primarily for lunar operations, I may need to make a separate LEO vehicle. But that will have to come later.
 
Pay atention at face,I use Sketch Up 5 so it's easy to see how's are face turned.
If face are not proper turned after conversion to Orbiter you woun't be able to see whole model.
 
Last edited:
Pay atention at face,I use Sketch Up 5 so it's easy to see how's are face turned.
If face are not proper turned after conversion to Orbiter you woun't be able to see whole model.
How do I fix any faces that are facing the wrong way?
 
Back
Top