360 Commits

Author SHA1 Message Date
Jens Ayton
dd78bf3a6d Cube map textures are now converted to lat/long maps (with appropriate flipping) when GL_ARB_texture_cube_map is not available. Can be tested with disable-cube-maps preference, but note that this will break any custom shaders that expect cube maps. (Cube maps are always available if shaders are supported.) Performance concerns: well, the actual conversion process is faster than the scaling used to implement supersampling.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3249 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-29 23:28:12 +00:00
Jens Ayton
f48c83b674 Logging tweaks: use OOLITE_SNAPSHOT_VERSION in log header if defined; less confusing message when failing to find AI plist for a ship's initial AI; stylistic consistency for JS planet errors.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3242 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-29 18:51:48 +00:00
Jens Ayton
926260dd38 Renaming.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3179 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-21 18:59:35 +00:00
Jens Ayton
ab623a5c94 * Big unified emission and illumination map thingy for non-shader mode. Known
limitations:
  - causes synchronous wait for component textures to load.
  - Component textures are cached unnecessarily.
* cleanup of material dictionary handling.
* Added foo_color variants of material colour key names.
* Added illumination_color material property.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3178 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-21 18:21:29 +00:00
Jens Ayton
731fae187f Fixed some Mac build breakage, removed some debug code.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3171 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-16 08:46:54 +00:00
Marc
e07cf99430 - Oopsie! Actually added the new tunnel shape.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3169 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-16 07:59:17 +00:00
Jens Ayton
ca06516f4c Cleaned up texture pixel-twiddling code a bit. Added extract_texture texture option (for, e.g., using one channel of a shader effect map as a glow map in non-texture mode). Mac: renamed custom static libpng to libpng_for_oolite, to avoid linking to wrong library when normal libpng installed in /usr/local/lib.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3165 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-15 23:51:41 +00:00
Jens Ayton
065d44deef Implemented non-power-of-two scalers for two-channel textures.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3159 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-12 22:36:46 +00:00
Jens Ayton
dcdbbdfbea Implemented multi-texture material for emission_map in non-shader mode (uses GL_ARB_texture_env_combine; included test case, which depends on shader test suite). Also a bunch of material code cleanup (and messup, to support multiple sets of texture coordinates).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3155 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-12 18:05:46 +00:00
Jens Ayton
c9cdbc7631 Added extra shader validation, controlled by DEBUG_SHADER_VALIDATION flag. Removed DEBUG_ENTITIES and merged DEBUG_OCTREE and DEBUG_OCTREE_TEXT into DEBUG_OCTREE_LOGGING.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3148 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-11 16:03:43 +00:00
Jens Ayton
d267cf71bf Implemented fallback to simple shader mode when full shader doesn't build, and added test case. Added debug flag to disable callback behaviour, used in shader test suite. Also moved debug flags to their own header.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3144 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-11 13:57:02 +00:00
Jens Ayton
0c19da2b47 Support for grey+alpha textures. (Part of this was accidentally included in previous commit.) Also fixed confusion of GL format and internalFormat in texture code.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3134 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-09 19:35:39 +00:00
Jens Ayton
48e2ffb5ea Removed superfluous build settings that caused a build error in Xcode 3.2.2.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3104 127b21dd-08f5-0310-b4b7-95ae10353056
2010-04-03 15:52:56 +00:00
Jens Ayton
a79eae0acc Better error logging when loading a saved game fails. Fixed up some script comments.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3080 127b21dd-08f5-0310-b4b7-95ae10353056
2010-03-26 23:07:23 +00:00
Jens Ayton
a1114c9b72 Fixed models being copied to wrong place (Mac only).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3061 127b21dd-08f5-0310-b4b7-95ae10353056
2010-03-13 17:29:22 +00:00
Jens Ayton
02e4b2bf8a Fixed Mac build.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3060 127b21dd-08f5-0310-b4b7-95ae10353056
2010-03-13 15:05:22 +00:00
Jens Ayton
29e904f0f6 More work on player shader binding issue: implemented ProxyPlayerEntity class.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3052 127b21dd-08f5-0310-b4b7-95ae10353056
2010-03-03 21:23:31 +00:00
Jens Ayton
a4382b451f Fixed bug where space dust velocity ignored inertial velocity of player, taking only thrust into account. Exposed player velocity to JS. Initial work on fixing player-only shader binding issue described at http://aegidian.org/bb/viewtopic.php?p=103930#103930 .
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3051 127b21dd-08f5-0310-b4b7-95ae10353056
2010-03-03 18:04:06 +00:00
Jens Ayton
93f35500f7 Preparing Xcode project for Mac nightly builds.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3041 127b21dd-08f5-0310-b4b7-95ae10353056
2010-02-24 22:40:11 +00:00
Jens Ayton
690f02cb32 Updated Xcode project for libpng 1.4.0.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3020 127b21dd-08f5-0310-b4b7-95ae10353056
2010-02-13 18:15:51 +00:00
Jens Ayton
4284da31cd Ships with the same model but different material dictionaries now work properly. Changed mechanism for saving and restoring wormholed ships.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2994 127b21dd-08f5-0310-b4b7-95ae10353056
2010-01-23 22:20:55 +00:00
Jens Ayton
7fa2001692 Slight variations in colour and specularity on oceans.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2958 127b21dd-08f5-0310-b4b7-95ae10353056
2010-01-10 16:06:45 +00:00
Marc
bb93c112da - yet more go-faster tweaks to the texture generator.
- integrated the previously separate atmosphere generator inside OOPlanetTextureGenerator, to avoid noise generator overheads.
- added NEW_ATMOSPHERE compile-time switch to OOPlanetEntity.

- tidying up of contract market generators: while they're still slow, some dead code was removed.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2918 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-30 09:17:01 +00:00
Marc
562d33d19d Custom Screens Part IIb: updated the mac project file to include the new stuff.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2910 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-24 22:55:25 +00:00
Jens Ayton
bf5ee3b2ce Reintroduced all models removed in r2787 (except exhaust.dat) based on the cleaned-up base ships. These models are now unused in Oolite, but some are referenced by OXPs.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2893 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-17 22:10:12 +00:00
Jens Ayton
c4cad73d63 Made planet texture generator several times faster.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2884 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-16 00:10:27 +00:00
Jens Ayton
044ae93959 Planet normal mapping is now disabled as intended in simple shader mode.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2883 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-15 21:45:46 +00:00
Jens Ayton
1c0251db3a Normal mapping for generated planets (full shader mode only). Normal/baked shadow intensity is now consistent when changing planet texture size. Switched to 1024x1024 except for reduced detail mode. NB: texture debug dump requires new methods which aren't implemented for SDL, but is switched off.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2881 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-13 12:35:42 +00:00
Marc
44df4a0f56 - oops!
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2868 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-10 00:38:24 +00:00
Jens Ayton
41f5d03697 Rudimentary planet shader (disabled with SHADY_PLANETS macro in OOPlanetEntity.m; texture mapping only, no lighting, but with per-pixel calculation of longitude component to completely eliminate distortion. Interacts badly with mip-mapping, though.)
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2860 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-07 22:42:23 +00:00
Jens Ayton
1e2e56b4b1 NEW_PLANETS now applies to scripted planets. If NEW_PLANETS, the old PlanetEntity and TextureStore are now completely excluded. Most of the kludges for dealing with both types of planet are gone.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2857 127b21dd-08f5-0310-b4b7-95ae10353056
2009-12-07 18:43:48 +00:00
Jens Ayton
5ddbe997b1 New planets now have procedural diffuse maps. Unfortunately, the generator seems to hang from time to time. Incidentally, the log entries saying Dequeued generator <OOPlanetTextureGenerator 0x133d7bcf0>{{(null) -- failed}} are not an actual failure.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2807 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-29 21:57:57 +00:00
Jens Ayton
7754f83cb7 Oops! That last commit wasn't really ready. Here's the rest of the fix, along with some half-baked new planet stuff (disabled with NEW_PLANETS in Universe.m).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2803 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-29 16:48:14 +00:00
Jens Ayton
7dcf2df39c Basic but working new planet drawable. Can be tested on ships by enabling BALL_WORLD in ShipEntity.m.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2799 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-29 14:36:22 +00:00
Jens Ayton
ae974039d2 Eliminated deprecated -cString method (again). Mac JS console now works in 64-bit mode. Unfortunately, this requires using different versions of RBSplitView for different architectures, since the 64-bit-compatible version doesn't work with Tiger.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2795 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-28 23:59:00 +00:00
Jens Ayton
9c076a03ab Basic-debug.oxp can now be built with a makefile in DebugOXP/, instead of being build in tools/simpleDebugConsole by the Xcode project.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2794 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-28 14:41:50 +00:00
Jens Ayton
b3f7f8508a Tidying up in project directory.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2793 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-28 14:25:17 +00:00
Jens Ayton
878f382106 Split suns out into a separate SunEntity class.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2792 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-28 14:17:57 +00:00
Jens Ayton
6edfa48452 Xcode project updates for removed models.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2790 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-28 14:07:27 +00:00
Jens Ayton
b346df7716 Fixed debug flags in master copy of oolite-debug-console.js.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2786 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-27 15:21:14 +00:00
Jens Ayton
1df30db2aa Fixed bug where name key in dictionary-form texture specifiers was ignored. Planet geometry thing can now generated DATs in an unwrapped mode to help verify texture mapping - wish I'd thought of that eariler.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2775 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-21 17:41:35 +00:00
Jens Ayton
5dd0443728 Refactored AI GraphViz stuff for slightly better legibility and put it in its own file.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2743 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-14 14:29:42 +00:00
Jens Ayton
8bb929b658 AI GraphViz handles set/switchAITo: followed by setStateTo:; added an entry for DEBUG_GRAPHVIZ to log header.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2738 127b21dd-08f5-0310-b4b7-95ae10353056
2009-11-12 17:32:42 +00:00
Jens Ayton
c2cb7d94e0 Implemented tricky part of polygon sprite outline generation, less tricky part to follow.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2693 127b21dd-08f5-0310-b4b7-95ae10353056
2009-10-24 18:34:39 +00:00
Jens Ayton
09e61dbdc9 Added polygon-sprite-dump-svg preference to save on graph paper. (This will be useful when I implement outline tesselation this weekend.)
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2686 127b21dd-08f5-0310-b4b7-95ae10353056
2009-10-21 19:43:22 +00:00
Jens Ayton
bc3a113b0f Incomplete support for general polygons in missile icons. (In case of splodey, setting the OLD_ICONS macro in HeadUpDisplay.m to 1 will revert to the old drawing code.)
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2661 127b21dd-08f5-0310-b4b7-95ae10353056
2009-10-10 12:23:24 +00:00
Marc
47f9f2c920 * corrected manifest miscount when ship in flight.
* last change to player.ship.manifest: manifest.food & similar are now read/write manifest quantities. Internally all commodities are now going to be referenced by the canonical identifiers, commodities.plist still overrides the displayName - the .manifest.list array is unchanged, and still read-only.
* renamed 2 ship properties for consistency: ship.availableCargoSpace & ship.cargoCapacity now become ship.cargoSpaceAvailable & ship.cargoSpaceCapacity.

- more code tidying.

git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2637 127b21dd-08f5-0310-b4b7-95ae10353056
2009-10-06 09:09:08 +00:00
Jens Ayton
287da97963 Weekend of SVN Death fixes: partial fix for planet texture mapping suckiness (disabled by default, see FIXED_TEX_COORDS in PlanetEntity.m). Fixed crash when constructing JS timer with invalid parameters. Some cleanup and stuff.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2636 127b21dd-08f5-0310-b4b7-95ae10353056
2009-10-05 13:13:06 +00:00
Jens Ayton
09843c8073 ...and removed now-unused flare256.png texture.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2603 127b21dd-08f5-0310-b4b7-95ae10353056
2009-09-25 19:36:08 +00:00
Jens Ayton
2f12c5c4e2 Moved laser and explosion flashes over to OOLightParticleEntity, and changed OOLightParticleEntity size from an NSSize to a single diameter.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@2602 127b21dd-08f5-0310-b4b7-95ae10353056
2009-09-25 19:35:13 +00:00