|
107 | Project::OSiRiON | editor | Bug Report | Critical | Moving selection fails unless active entity is clicked | Assigned | |
Task Description
If you box-select a number of entities, and you want to move them, you have to drag the active selected entity. CLicking any other selected (highlighted) entity will deselect the other members in the selection. Dragging any member of the selection should work. |
|
104 | Project::OSiRiON | client | Planned Feature | High | Improved inventory menu. | Assigned | |
Task Description
The current inventory menu is too confusing. TODO - tabs for cargo/weapon/equipment - show weapon slots - show mounted weapons inside their slots, mounting/unmounting a weapon moves it back and forth between slot and inventory |
|
98 | Project::OSiRiON | render | Planned Feature | High | Material texture stages | In progress | |
Task Description
To ease the transition to a multitexturing rendering environment, I propose that we fully adopt Quake 3 shader scripting. Currently, we support a simpler version with a single texture stage in mind. DONE - Support for material with multiple layers TODO - OpenGL multitexture support - Improve syntax Exmaple of current implementation: shader/path/name { qer_editorimage path/to/texture { map path/to/texture entity } { map path/to/glow_texture fullbright blendfunc blend } } --------------------------------- Quake 3: shader/path/name { qer_editorimage path/to/texture other_keywords { map path/to/texture } { map path/to/texture2 blendfunc ... } |
|
97 | Project::OSiRiON | client | Bug Report | Low | Move default fonts from ui::UI to ui::PAlette | Assigned | |
Task Description
The corrent ui code has default fonts and font size in ui::root(). They have to bo moved to the ui::Palette class and handled like colors and related settings. The initial default fonts should be set in the ui::Pallette class. It might be better to merge ui-style related settings into a single ui::Stylesheet class and read settings from a .css file. |
|
93 | Project::OSiRiON | render | Feature Request | Low | Allow currently loaded skybox to be bound as a texture. | New | |
Task Description
We need this in order to clean up the material drawing(specifically the environment mapping section). This could also possibly enable us to use the skybox cubemap for nice reflection effects. |
|
92 | Project::OSiRiON | src | Feature Request | Medium | Clean up of material, light, flare and particle color ... | New | |
Task Description
Clean up and homogenize material, light, flare, engine and particle color types and flags. Those fx can be triggered by engine states (trigger_impulse, trigger_engine, trigger_destroyed, ..) The color can be set as color_entity, color_entity_second, color_entity_third, color_engine, ... TODO - review/refactor: lights, flares, materials, and particles should have the some options for triggers and colortypes. The parameter names in .map file classes and .material files should be the same |
|
74 | Project::OSiRiON | render | Bug Report | Low | Scene drawing is not skipped when testmodel screen is o... | New | |
Task Description
If the testmodel window is opened, the current scene is still drawn. Fixing this would provide quite an optimization. |
|
66 | Project::OSiRiON | src | Planned Feature | Low | Nebula support | New | |
Task Description
Support for decent-looking nebulas. |
|
65 | Project::OSiRiON | render | Planned Feature | Low | Material blend modes. | In progress | |
Task Description
Shaders need a way to enable different OpenGL blending modes, like Quake 3's "blendFunc". This will allow special effects like light beams and 3d exhaust effects. DONE - blenfunc none - blendunc add - blendfunc blend TODO - blendfuncGL_SOMETHING GL_SOMETHING - blendfunc filter? |
|
60 | Project::OSiRiON | src | Feature Request | Low | Thrust Point Entities | New | |
Task Description
For finer control of the ship, thrust points should be defined. Instead of the ship being pushed from its origin point, thrust entities would define where the force against the ship is coming from. This would allow for more realistic control. If more than one entity is used, the thrust power is split between them, or defined by percentage specifically with entity keys. |
|
59 | Project::OSiRiON | client | Planned Feature | Low | Improved map menu | In progress | |
Task Description
Improved map menu, implement a 'galactic overview'. Provide galactic coordinates for each zone. DONE - add Info record type for zone info - add Zone location - add galactic overview to map - add Zone::info() to network message - add Zone::flags() - add Zone::flags() to network message - add Zone::location() to network message - add Zone::color() and use it on the galactic map - add Zone::color() to network message TODO - mechanism to request zone map content in multiplayer games - do not delete client-side ShowOnMap entities in multiplayer games - show jumpgate links on the galactic map (this requires engine infrastructure) - mechanism to show only visited places - map zoom |
|
41 | Project::OSiRiON | render | Feature Request | Medium | LOD entity keys + Automatic patch LOD | New | |
Task Description
The engine needs a way to be able to use a LOD system for performance reasons. I propose a method for this: all brush entities(except worldspawn and misc_model) will have a 'lod' key. The existence of this key in the entity(as in, if it's actually set) tells the engine to enable LOD on the entity. The value for the LOD key would be an integer of 0 through 3. A value of 3 tells the engine to only render the brushes at 75% and above of the detail LOD distance. A value of 2 renders at 50-75%. A value of 1 renders at 25-50%. 0 renders at 0-25% distance. If the key is not set, the brushes will render at all distances(unless set to detail). This allows two things: Patch meshes get LOD, and LOD gradually degrades with distance. An alternative would be in patch loading. At model load, bake 4 levels of LOD for the patch meshes into the model, and apply the same rules as above. This may not be desirable because some patch meshes may be required to stay at full LOD for specific reasons. The only downside to this is that it requires more memory to store the LOD models, but it would cut down on polygon count at render time significantly. |
|
36 | Project::OSiRiON | core | Planned Feature | High | Player signals | New | |
Task Description
Implement a system where players can send arbitrary signals to each other (arbitrary, from the point of view of the network protocol). This would be used to send trade and docking requests, and to replace the silly 'hail' command with a 'request for private chat'. In the future this could also be used for other signals, like players declaring their hostile intent. It might also be possible to use the signals mechanism to exchange targetting info. |
|
35 | Project::OSiRiON | render | Planned Feature | Low | GLSL Shader program support | New | |
Task Description
Extend the current Material system to support GLSL shader programs. Normal map, specular map and glow map support. |
|
34 | Project::OSiRiON | client | Planned Feature | High | Improved options menu | Assigned | |
Task Description
Add an improved options menu with video, audio, controls and game settings. TODO - video settings - menu to configure game settings - merge settings menus into a single, tabbed window DONE - menu to configure controls - menu to configure player settings (name, colors, ..) - menu to configure graphics settings - menu to configure audio settings |
|
33 | Project::OSiRiON | src | Planned Feature | Medium | Soundtrack support | New | |
Task Description
Add client support for playing background music.It should be possible to define a number of audio tracks per zone, for the intro, and make provisions for 'battle music'. Investigate support for FLAC, OGG and MP3 audio formats. |
|
30 | Project::OSiRiON | render | Planned Feature | Low | Improved particle systems | In progress | |
Task Description
Improved particle systems: weapon effects, engine effects, explosions, smoke... An improved framework for particle systems unifying all of the above. DONE - Particle system code needs to support multiple ejectors per system, at the moment a particle system is created for each ejector - Add fine-grained control parameters (alpha start mid end) (radius start mid end) .. See tremulous particles - Streak style particles (aka 'trail sprites') - replace [ejector] with [sprites] [flares] [trail] etc - ejector thrust trigger - ejector impulse trigger - ejector explosion trigger TODO - Flame style particles -> needs thinking, how to do it exactly |
|
28 | Project::OSiRiON | src | Planned Feature | High | Equipment | Assigned | |
Task Description
Weapons, shields, armour... TODO - Shields & armor - Mining equipment ? - Misc equipment DONE - Weapons |
|
19 | Project::OSiRiON | game | Feature Request | Low | Fuel System | New | |
Task Description
Fuel System. |
|
18 | Project::OSiRiON | game | Planned Feature | Medium | Equipment Trading | Assigned | |
Task Description
The purchase and selling of ship equipment such as weapons. |
|
17 | Project::OSiRiON | src | Planned Feature | Medium | Tractor beam effect | New | |
Task Description
Implement beam particles for tractoring cargo. The tracktor beam is currently completely server-side, this will require additional engine infrastructure or a hack. Instead of 'beams' a general 'effect' could be created. It is possible to create an entity holding a model with a particle system (like projectiles) representing the 'beam-in' effect (think star trek transporters). On the other hand, implementing beam style would open the door for beam weapons. |
|
15 | Project::OSiRiON | game | Planned Feature | Medium | Player-to-player trading | Assigned | |
Task Description
Add player-to-player trading. Implementation: * Docking player ships should require owner permission * Player shops * Player must be able to decide what items to sell, at what prices. *'tradeable' flag *shop allows multiple buyers, player-to-player only one. *Player factory ships, base factories, per-item adjustable conversion rate and ratio. e.g. 2 units of niobum to 1 superconductor per 30 seconds |
|
13 | Project::OSiRiON | client | Feature Request | Low | Support for non us-qwerty keyboard layouts. | New | |
Task Description
Right now the client keyboard input code is hardwired to a US-QWERTY layout. It should use the native keyboard layout of the user. At the same time, the code should be tested for UTF8. |
|
12 | Project::OSiRiON | render | Feature Request | Low | Light Flare Occlusion | New | |
Task Description
Having light flares occlude behind objects would allow more detailed flares to be used. The following is a screenshot from Mass Effect, and is the back of the Normandy: http://www.bioware.com/_commonext/images/me/screenshots/dlc/masseffect_01_1280x760.jpg If this were tried in Osirion with a regular light entity and a similar flare texture, it would be partially visible from behind surfaces, which is not the desired effect as the light shouldn't be making a flare if it's seen from behind a wall. This is also the reason why most of the flares in Osirion are circular, because a horizontal flare(also known as the 'film-style' flare) is too difficult to get right when it can move in all angles. In the end, this might actually lower performance a tiny bit because each flare has to be checked if it's behind a surface, but if a flare is completely blocked, it shouldn't render at all which would make up for the loss. Q3 has several methods of doing this, including a timed fade, real fade, and instant. Timed fade: when a flare becomes visible, begin rendering the quad and slowly increase its size and alpha from 0 until it reaches the size indicated by the entity. The rate of size increase is based on a simple timer. Real fade: like timed fade, begin rendering the quad once visible but instead of using a fixed timer, only increase the size and alpha depending on how much of the flare is in view. I believe this is done via the size indicated in the entity, and is based on how much of it at its full size is visible(I'm guessing an invisible quad at max size is used to test this). This method is best because it can be tweaked to allow the flare to overlap the surfaces in front of it by a small amount, making it look very realistic. Instant: the flare is instantly visible at max size and alpha as soon as the light entity's origin is visible by the camera. |
|
9 | Project::OSiRiON | render | Bug Report | Low | Entity axis transformation is not applied to Cubemap te... | New | |
Task Description
Symptom: When rotating the ship, cubemap reflections are not rotated in effect, and stay in the default rotation axis. |
|
5 | Project::OSiRiON | core | Bug Report | Low | 'give ship x' while moving makes player unable to contr... | Assigned | |
Task Description
At random, if you use 'give ship' while your ship is moving, you can be trapped in a state where you cannot turn or move in any direction. You are still given the new ship, however, and if you use 'give ship' a few more times, you can recover from the problem. Leaving this as low-priority since 'give ship' is technically a cheat. Setting this as category 'src' because the cause is unknown. |
|
3 | Project::OSiRiON | render | Bug Report | Low | Merged patch mesh points produce bad results on Intel | New | |
Task Description
If multiple patch mesh points are in the same place(like on many windows), certain polygons are lit incorrectly on Intel hardware. Shot taken from netbook with Intel 945G chipset. |