Commit Graph

144 Commits (master)

Author SHA1 Message Date
Gliese852 5004b09483 Improve/fix system map
- add a "static" orbit for bodies that are not moving anywhere
- now bodies in a rotating frame and also in the spaceport frame have
  such "static" orbits
- add display of the orbits of objects moving strictly to the star or
  from the star
- fix compile warning for possibly uninitiated variable in
  LuaSystemView.cpp
- fix an issue where smooth animation sometimes have a hard time
  catching up with a newly selected object

Fixes #5062
2021-02-01 02:31:24 -05:00
Karl F 9e44b09314 Happy new year!
HAPPY MERRY 2021!
2021-01-03 19:40:16 +01:00
Webster Sheets 37c96041e1
Refactor Body inheritance tree to remove Object and CityOnPlanet (#4995)
* Remove CityOnPlanet from Object hierarchy

* Remove Object from the inheritance hierarchy

* Rename Object -> ObjectType
2020-11-11 19:33:04 -05:00
starling13 2d0d7e710a Ship: fix calculation of drag force basis components 2020-08-25 13:41:56 +03:00
starling13 cf95f17e9b DynamicBody: add method GetCurrentAtmosphericState by separatring this code from CalcAtmosphericDrag 2020-08-25 13:06:34 +03:00
Edoardo Morandi e6b9cd8d71 Remove many warnings 2020-04-25 01:31:42 +02:00
Karl F 436db08636 Happy new decade!
May you live long and prosper!
2020-01-01 10:47:46 +01:00
mike-f1 4f1eaa41d3 Update all files to store and use FrameId instead of raw pointers 2019-11-16 17:54:14 +01:00
mike-f1 e6403fc1ad Decouple includes; Remove some unused variable; Fix an equation in Space.cpp 2019-10-20 11:19:45 +02:00
Webster Sheets 7534cc2bca Move set-speed control to an axis binding, remove WorldView::ChangeFlightState. 2019-06-01 13:45:36 -04:00
Arda Güler d4bee3b034 Atmospheric flight (#4556)
* Simple atmospheric flight calculations

* Remove unnecessary normalize operation

* Replace some values

* Initial ship values

* AoA bugfix

* Final tweak, hopefully

* Rewrite lift and drag calculations, update ship values, add vec3.Lerp.

* Fix lift-AoA relation

* Rename functions

* Code comments and delete unnecessary new line

* New ship values

* Better default calculations.

* Update comments.

* Don't use Inverse()

* Fix timeaccel-torque thing
2019-04-28 14:48:20 +01:00
mike-f1 3c097a555b Clang formatting 2019-02-04 21:27:17 +01:00
mike-f1 712addca7f Remove ModelBody and DynamicBody model loading funtions, use a ctor; Decouple include for ShipCockpit 2019-02-03 20:46:09 +01:00
mike-f1 9b3bf66125 Reorder methods in some files: ctor, load/save, postload and dtor 2019-02-03 20:46:05 +01:00
mike-f1 5672824234 Remove 'Load*' from DynamicBody and provide a loading ctor, use it in Ship, Cargo and Missile 2019-02-03 20:45:50 +01:00
mike-f1 ac3d6c371d clean includes from Frame, DynamicBody, Color and LuaRef 2019-01-22 20:11:26 +01:00
Webster Sheets 5cdaefad6a Run clang-format over the entire code base.
Fix hidden header-inclusion-order dependency errors.
Update .clang-format for v7.0.1.
2019-01-05 17:09:05 -05:00
Karl F d2ab921b62 Happy New Year!
Awesome sauce (for next year):
find . -type f -exec sed -i 's/2008-2018 Pioneer Developers'/'2008-2019 Pioneer Developers/g' {} \;

closes #4507
2019-01-03 15:28:42 +01:00
Andrew Copland 4be499f98f Fix the unused variable warnings caused by (Json::type_error &e) 2018-10-17 21:38:23 +01:00
Webster Sheets 3a3a13edec Update pioneer to use the new save system. 2018-10-11 11:45:57 -04:00
Andrew Copland f5c103b4cd Avoid storing zero vectors and identity Quaternions 2018-09-25 12:22:54 +01:00
John Bartholomew 67dcbcecf6 Move JsonUtils.h/cpp from contrib/json/ to src/
These files aren't part of the jsoncpp library and are custom for Pioneer.
They also directly include various other Pioneer source files.
2018-08-26 09:55:14 +01:00
Andrew Copland 3ac635800a Make Propulsion and FixedGuns into RefCounted objects. 2018-02-11 17:04:16 +00:00
Karl F 7225e9c723 Happy New Year!
Ten years in the making now, but how can we improve upon perfection
for ten more years?
2018-01-01 21:22:12 +01:00
John Bartholomew 7c3a13a0c0 Remove almost all includes of Serializer.h, include GameSaveError.h where necessary. 2017-12-26 13:02:26 +00:00
Peter 93104a3984 The Great Disinheritance: make FixedGuns a component 2017-05-10 13:49:06 +02:00
Peter d538c7562b The Great Disinheritance: make Propulsion a component 2017-04-27 14:34:29 +02:00
mike-f1 2013fae968 Make ship code modular
Closes #3914
Solves #2012
2017-02-07 17:47:46 +01:00
Andrew Copland 74d50958fe MERRY HAPPY 2017 2017-01-04 15:11:15 +00:00
Andrew Copland fea5ac26b2 MERRY HAPPY 2016 2016-01-29 11:31:54 +00:00
nick-the-ninja 724eb89d47 Removing old serialisation code in body classes, Game and Space. Added JSON serialisation code to classes Player and Space. Pioneer would not have saved and loaded correctly without it. 2015-02-17 22:54:23 +00:00
nick-the-ninja d7b73e5992 Added JSON serialisation code for DynamicBody and SpaceStation. 2015-02-16 23:47:01 +00:00
Robert Norris 9f95339a9d MERRY HAPPY 2014-12-31 23:05:37 +11:00
Karl F ced85710e1 fix cargo onDamage to be correct 2014-11-25 17:31:40 +01:00
Lars W. (lwho) 9ad8b6ced6 Disable wheel button if lowering would be dangerous. 2014-10-01 19:06:46 +02:00
Lars W. (lwho) 4ca5c6d265 Increase atmospheric drag by 25% when wheels are down. 2014-10-01 18:33:42 +02:00
Karl F bdda6101e8 remove lower cap for cargo body damage 2014-09-08 18:07:33 +02:00
Andrew Copland e9d9ceefa6 Implement most of the warning & performance points from my annual CppCheck run.
Most of these are functionally equivalent but are slightly more optimal, most are just a recommended way of doing things.
2014-04-16 18:09:40 +01:00
Robert Norris 714c296fc1 send all output through the Output function instead of *printf 2014-01-28 20:40:09 +11:00
Andrew Copland 2409d986c7 Merge branch 'master' of https://github.com/pioneerspacesim/pioneer into Shields
Conflicts:
	src/Intro.cpp
	src/Ship.cpp
	src/Ship.h
	src/gameui/ModelSpinner.cpp
	win32/vc2012/pioneer.vcxproj.filters
	win32/vc2013Express/pioneer.vcxproj.filters
2014-01-14 08:06:59 +00:00
Robert Norris 6dc4283eb6 happy new year 2014-01-02 14:43:38 +11:00
Andrew Copland bc39c7d91d Merge branch 'master' of https://github.com/pioneerspacesim/pioneer into Shields 2013-11-03 14:30:51 +00:00
Robert Norris dd07f81735 update animations in for all model bodies 2013-10-22 17:07:57 +11:00
Andrew Copland f392572e25 WIP - pre-holiday commit.
Trying to get hitting the shield to work.
Need to pass through the collision data (position and normal etc) to bodies so I can extract and transform it in Ship. Not done yet.
Started adding a "Hit it!" button to ModelViewer but run out of time today.
2013-10-20 15:05:30 +01:00
kko d2e1140cd2 Replace all define constants in .cpp files with static const 2013-06-26 21:07:40 -04:00
John Bartholomew 3df2beea35 Orbit: calc_orbit -> FromBodyState; DynamicBody: {Return -> Compute}Orbit
The weird prototype for calc_orbit has been cleaned up into FromBodyState.
FromBodyState is a static method that constructs a new Orbit from the
body state parameters.

DynamicBody's unused internal "orbit" member has been removed.
2013-03-29 15:02:35 +00:00
John Bartholomew 9b0ead724f clean up includes a bit in Orbit.h/cpp 2013-03-29 13:17:40 +00:00
irigi a2b18c1dc3 extract Orbit from StarSystem and display player orbit in SystemView
The Orbit structure from StarSystem.cpp is pulled out into its own
files Orbit.h/cpp, and other orbital calculations are turned into
static functions on that struct.

Orbit struct and calculations are also altered to work for hyperbolic
trajectories.

DynamicBody gains a ReturnOrbit method to compute the orbit of the
body, and this is used to plot the player's orbit in the System View.

Note: This was originally a 15-commit PR from irigi.
I (@johnbartholomew) am squashing it into one commit because the
history is messy but I don't want it to lose irigi as git author.
2013-03-28 23:42:20 +00:00
John Jordan 339dff1716 Various dynamics and autopilot fixes
Conflicts:
	win32/vc2008/pioneer-msvc-9.0.vcproj
2013-01-05 15:22:12 +11:00
John Jordan 3610a2897b Fix dumb bug in atmospheric drag calc, restore previous behaviour 2013-01-03 01:52:32 +00:00