|
Addon Development Thread
|
|
| HarbingerDawn | Date: Friday, 26.10.2012, 05:08 | Message # 91 |
 Cosmic Curator
Group: Administrators
United States
Messages: 8717
Status: Offline
| Quote (Amwhere) So, I've continued working on my system parser - it's much cleaner now. Very impressive, I love those html tables!
All forum users, please read this! My SE mods and addons Phenom II X6 1090T 3.2 GHz, 16 GB DDR3 RAM, GTX 970 3584 MB VRAM
|
| |
| |
| Amwhere | Date: Friday, 26.10.2012, 05:49 | Message # 92 |
|
Astronaut
Group: Users
United States
Messages: 62
Status: Offline
| Temperature - I actually simulate the system's orbits. For single star systems, temperatures matches up pretty much perfectly with SE. For multiple star systems, things don't match up. For the atmosphere, I tried to come up with something that would make reasonable output.
(I could send you the code, SE, although it's, like me, scatterbrained.)
Edit: Wow. I need to reread my posts before I post them! Any other questions?
Edited by Amwhere - Friday, 26.10.2012, 23:12 |
| |
| |
| Amwhere | Date: Sunday, 28.10.2012, 01:48 | Message # 93 |
|
Astronaut
Group: Users
United States
Messages: 62
Status: Offline
| Here's an example of the difference between my calculated temps and SEs. Take this system and planet: RS 8403-173-8-12031331-316 3 In SE, the planet ranges between 265 and 290K - which, if you think about it, doesn't make much sense. Both stars of the system combined output less energy than the Sun, and the planet is at about 1.4 AU... yet it is hotter than the Earth.
My calculation says it should be between 167 and 186 - http://amwhre.comeze.com/special....90.html
Not sure if it's me or SE.
|
| |
| |
| SpaceEngineer | Date: Sunday, 28.10.2012, 02:06 | Message # 94 |
 Author of Space Engine
Group: Administrators
Russian Federation
Messages: 4800
Status: Offline
| The function used in SE to calculate average temperature on the planet (and temperature of its exosphere):
Code float TSolarSystem::CalcBodyTemperature(TSpaceBody &CBody, double time) { vec3d bodyPos = GetBodyBarycentricPos(&CBody, time); float Temperature = 0.0f; float TempExo = 0.0f;
for (int i=0; i<NSunsBarys; ++i) { TSpaceBody &CSun = Body[i]; if (CSun.Type != PT_SUN) continue; double sunDist = (GetBodyBarycentricPos(&CSun, time) - bodyPos).length() / km; double solAngRad = CSun.Surface.Radius / sunDist; if (solAngRad >= 1.0) solAngRad = 1.0; Temperature += CSun.StarData.GetTemperature() * sqrt(0.5 * asin(solAngRad)); TempExo += 1500.0f * pow(sqrt(CSun.StarData.GetLuminosityUV() / 0.072f) / float(sunDist*km/AU), 0.21f); }
// For slowly rotating planets //if (CBody.Surface.RotPeriod > 10.0f) Temperature *= 1.189207115f;
Temperature = Temperature * pow(1.0f - CBody.Albedo, 0.25f) + PlanetMinTemperature; if (CBody.Atmosphere.Greenhouse != NO_DATA) Temperature += CBody.Atmosphere.Greenhouse;
CBody.Atmosphere.TempExo = max2f(TempExo + PlanetMinTemperature, Temperature); CBody.Temperature = Temperature;
return CBody.Temperature; }
Cycle through all suns in the system. GetBodyBarycentricPos() fucntion returns barycentric coordinates of the body at any given time (in parsecs). CSun.StarData.GetTemperature() function returns tempearture of sun's photoshpere. CSun.StarData.GetLuminosityUV() function returns fraction of sun's radiation emitted in ultraviolet band (table and interpolation used). PlanetMinTemperature = 2.722 for now, in future it will depend on system's position in the galaxy. km = 3.240776488385780515715e-14 - constant to convert kilometers to parsecs. AU = 4.848136811095359935899e-6 - constant to convert AUs to parsecs.
|
| |
| |
| Amwhere | Date: Sunday, 28.10.2012, 02:29 | Message # 95 |
|
Astronaut
Group: Users
United States
Messages: 62
Status: Offline
| Hmmm. As I said, my code works fine for a one star system.
Code /*Calculates a Stars total output */ public static double getStarFlux(Star s) { double fluxM = Math.Pow(s.temperature, 4) * (Helper.sigma); //sigma = 5.6704E-008; double area = 4 * Math.PI * Math.Pow(s.radius * 1000, 2); return fluxM * area;
} /*Gets a stars output at a given distance */ public static double getStellarConstant(double starFlux, double distance) { double area = 4 * Math.PI * (distance * distance); return starFlux / area;
}
public static double getPlanetTemp(double starConstant, double abledo, double greenhouse) { double fluxAbsorbed = (starConstant / 4) * (1 - abledo);
return Math.Pow((fluxAbsorbed / Helper.sigma), .25) + greenhouse + Helper.CMB; //CMB = 2.725 }
As I said, if you want me to send you the whole thing, I will.
|
| |
| |
| SpaceEngineer | Date: Sunday, 28.10.2012, 04:28 | Message # 96 |
 Author of Space Engine
Group: Administrators
Russian Federation
Messages: 4800
Status: Offline
| Quote (Amwhere) Hmmm. As I said, my code works fine for a one star system. So you need just make a cycle through all stars in the system.
Quote (Amwhere) As I said, if you want me to send you the whole thing, I will. Thanks, it's interesting to take a look, however I guess nothing complex there.
|
| |
| |
| Amwhere | Date: Sunday, 28.10.2012, 05:09 | Message # 97 |
|
Astronaut
Group: Users
United States
Messages: 62
Status: Offline
| Quote (SpaceEngineer) So you need just make a cycle through all stars in the system I do. I sent the code to the email on the contact page.
|
| |
| |
| DoctorOfSpace | Date: Tuesday, 06.11.2012, 04:43 | Message # 98 |
 Galaxy Architect
Group: Global Moderators
Pirate
Messages: 3600
Status: Offline
| To fix the triangle problem in the Star Trek ships I removed BumpMap and DetailBumpMap. Not a big difference in how they look besides a bump but it smoothed them out and fixed the triangle issue.
Some images in different lighting
My favorite image
Intel Core i7-5820K 4.2GHz 6-Core Processor G.Skill Ripjaws V Series 32GB (4 x 8GB) DDR4-2400 Memory EVGA GTX 980 Ti SC 6GB
|
| |
| |
| Destructor1701 | Date: Thursday, 08.11.2012, 19:33 | Message # 99 |
|
Pioneer
Group: Users
Ireland
Messages: 533
Status: Offline
| Friggin' beautiful images!
I've been porting some BSG models in my spare time, and yeah, the bump mapping seems be the culprit... I wonder what's going on there...
Edited by Destructor1701 - Thursday, 08.11.2012, 19:34 |
| |
| |
|
| SpaceEngineer | Date: Saturday, 10.11.2012, 21:12 | Message # 101 |
 Author of Space Engine
Group: Administrators
Russian Federation
Messages: 4800
Status: Offline
| BSG ships will feel themselves good in their native Cyrannus system
|
| |
| |
| DoctorOfSpace | Date: Saturday, 10.11.2012, 21:25 | Message # 102 |
 Galaxy Architect
Group: Global Moderators
Pirate
Messages: 3600
Status: Offline
| Quote (SpaceEngineer) BSG ships will feel themselves good in their native Cyrannus system
Indeed I may be able to release today or tomorrow at this rate. These ships are porting extremely easily, just finished cloud 9.
Edit:
3 more BSG ships.
Botanical Cruiser, Astral Queen, and Mineralship
Intel Core i7-5820K 4.2GHz 6-Core Processor G.Skill Ripjaws V Series 32GB (4 x 8GB) DDR4-2400 Memory EVGA GTX 980 Ti SC 6GB
Edited by DoctorOfSpace - Saturday, 10.11.2012, 21:47 |
| |
| |
| BlackArk | Date: Saturday, 10.11.2012, 21:29 | Message # 103 |
|
Space Pilot
Group: Users
United States
Messages: 137
Status: Offline
| hopefully We will be able to see inside the ships later on in SE I like next year or longer.
|
| |
| |
| DoctorOfSpace | Date: Saturday, 10.11.2012, 22:13 | Message # 104 |
 Galaxy Architect
Group: Global Moderators
Pirate
Messages: 3600
Status: Offline
| More BSG ships, expect a release soon
Raptor
Cylon Basestar
Intel Core i7-5820K 4.2GHz 6-Core Processor G.Skill Ripjaws V Series 32GB (4 x 8GB) DDR4-2400 Memory EVGA GTX 980 Ti SC 6GB
|
| |
| |
| HarbingerDawn | Date: Saturday, 10.11.2012, 22:33 | Message # 105 |
 Cosmic Curator
Group: Administrators
United States
Messages: 8717
Status: Offline
| Quote (DoctorOfSpace) Cylon Basestar That Basestar looks spectacular, maybe my favorite model yet
All forum users, please read this! My SE mods and addons Phenom II X6 1090T 3.2 GHz, 16 GB DDR3 RAM, GTX 970 3584 MB VRAM
|
| |
| |