As for now, we target a 2.0 release at the end of 2010, with a beta release in October.
The task lists have been frozen at the end of march 2010.
List here the big targets, no matter how and who will implement them, or if 2.0 will have them fully completed or even only started. Each one has a unique Hxx Id, that will not change ever, even if the task/feature is postponed or removed.
Id
Feature / task
Description
H01
Bug fixes
A forever task : among the bugs we detected in release N-1, we have to select the ones we plan to fix for release N
H02
CMake build system
Build SD through CMake on Windows / MSVC 2005, Linux / GCC 4, and Mac OS X / GCC 4
H03
SDL port
Replace GLUT library by the more modern and actively maintained SDL
H04
Better artwork footprint/maintainability
Deliver source material, get rid of RGB, move to JPEG when relevant (otherwise to PNG), clean-up useless files
H05
Improve FPS
Be able to race against more competitors at the same time with higher and more stable FPS figures on every track
H06
Simu V3 or Simu V2 ?
Study pros and cons, and decide if we can do it for 2.0 (Warning: implies reworking robots and cars setups)
H07
Less potential legal issues
Fictional car logos, etc ...
H08
Cleaner / shorter code
A medium / long term whole code improvement target
H09
Up-to-date-ness with TORCS
A forever task : check TORCS changes on a regular basis, especially in the physics engines code, and apply the ones we find relevant and useful
H10
Career mode
A special race mode for a driver's full life-time career
H11
Network racing
Race again human friends and robots over the internet
H12
Timed sessions
?Need a description?
H13
Sky and weather realism
Realistic sky according to choosen time-of-day and weather conditions at race start ; visual and grip-related rain simulation (1st step, 2.0) ; time acceleration would be useful for 24h-12h-6h-1000km-1000mile races ; random changes of weather and associated grip (2nd step, harder, post-2.0)
H14
Force Feedback
Feel the cars reactions on one's hands with force feedback driving devices
H15
Race pause, save to disk and ... restore
For long races, be able to save the race state to disk and restore it some days later in a new SD session.
H16
Menu refresh
Continue to visually improve the menu and complete full menu skinability through simple XML files
H17
Car setup menu
Enable non expert users to tweak with their cars ; see detailed brainstorming somewhere in Speed Dreams or Torcs-NG devel. team chat archives
H18
Car preview and selectable livery
Enable the user to choose among multiple available liveries for his car when he chooses it, and so see how it looks in the same menu
H19
Human car choice in race config. menu
Break the car <-> human driver hard link, at least in Practice and QuickRace mode (banned in other race types ?) : move the human car selection in the race config. menu, just as for opponents
H20
QuickRace configuration save to disk and ... restore
It's always frustrating that you can't save your QuickRace configuration (track, race settings, opponent list) and re-use it later
H21
Telemetry
Data extraction / post-processing GUI ; usefull for robot / car setups ; replace / enhance current telemetry system ?
H22
New 3D graphics module
In the medium / long term goal to replace the old ssggraph (PLib) module, examine / test alternative libraries / systems : Open Scene Graph, Ogre 3D, ...
H23
Driving assistance
Many possible features in this domain (see Haruna's post about that in early 2010 march
H24
New Track Editor
Create a new Track Editor ?more details needed?
H25
Improved engine sounds
Replace / improve pour ones (relevant to the car engine characteristics, nicer to the ears, louder, more balanced level, more stable in time)
H26
Improved simulated sound environment
Better / level-balanced engine sounds, more consistent balance of the sources in the OpenAL backend, ...
H27
In-game music and menu sounds
In-game music playback (menu only, or also in-race ?) and menu sounds on clicks and so on
H28
Advanced visual realism for cars
Higher resolution textures, better shading, etc
H29
New cars
Add new cars sets and associated USR / Simplix setups (F1, Rally, LS2, ...)
H30
More realistic cockpit view
A dedicated 3D model for the cars cockpit, through 1 default one for each car set ; no animated gauges for the moment
H31
Improved tracks
Texture rework and enhancements, better preview image (one some), reworked track name and description, track localization on Track Select menu (flag image, ...), etc ...
H32
New tracks
Add new tracks (Salty, LongDay ? Wunstorf ? ...
H33
Race flags
Blue / yellow race flags and rules
H34
Safety car
Safety car for rolling start / neutralizing the race (depends on H33)
H35
Separate paths
Separate paths for pits / alternative routes
H36
Replay
Instant replay, and the ability to save and later review them
H37
Ghost cars
A car representing a saved hotlap is also shown
H38
Realistic and consistent parameters for cars
For some car parameters (in the <car>.xml file), we often have to use non realistic values to get a realistic behaviour ; this makes car setup difficult to achieve and maintain, if not unreadable by non experts
List here the tasks that developers will have to achieve in order to implement the big targets described above. Many will probably be postponed when we'll assign priorities and make the list match with the release roadmap. Each one has a unique Dxx Id, that will not change ever, even if the task/feature is postponed or removed. In the possible assignment, names with a question mark (?) are only suggestions( please add the ? or remove your name if you are not sure or don't agree :-)
Id
Task
Description
Status
Possible assignment (dedicated sub-team)
Dependencies
D01
Bug fixes
See above : select the ones we want to fix and fix them
To do
Developers
D02
No more memory leaks
Track them down (use valgrind under Linux) ; Customized memory allocation using a double linked list to allow garbage collection (similar to the single linked list used in the team manager code and the debug code checking for overridden block markers) (find a solution for the sooo huge slow down in race mode that makes valgrind nearly unusable)
Linux: Mart Windows: Wolf-Dieter?
D03
SDL port
See above + move input device management to SDL
Implemented, might need testing and bug fixing
Mart, Brian, Jean-Philippe
D04
CMake build system
See above. Some last features to finish / add (out of source build, replace "TORCS_XXX" variables and macros by "SD_XXX", finish robot development framework install system
Implemented, needs testing and last small features
Mart, Jean-Philippe
D05
JPEG image support
Useful at least for lighter menu background images
Implemented, needs testing
Brian
D06
Remove dependency on ALUT
We only use it for loading/unloading WAV files into OpenAL buffers, and through 2 deprecated functions ; can be easily replaced by calls to SDL, as explained here ; at most 2 hours of work
Jean-Philippe
D07
Try Python for menu code
Try and integrate smoothly Python in the Menu system to see if it could one day replace C++ for non FPS critical code
Jean-Philippe
D08
Code profiling
Run an exhaustive study about where the CPU is consumed in the code (Physics engine, robots, graphic engine, ...), in the various relevant configurations (tracks, robots, simu. engine ...)
Jean-Philippe, Wolf-Dieter, Mart
D09
Simu V3 or Simu V2 ?
See above
Depends on Christos plans, may be we can have an influence on it ...
Jean-Philippe, Mart?, Andrew?, Wolf-Dieter, Kilo?
D10
Support for tracks graphics optimization
May or may not be necessary, according to the conclusions of the artists task "Fix tracks that kill FPS"
?
D11
Support for multiple cars with same 3D model
Would be usefull for the Indy car set, to avoid copying the same 3D model everywhere
?
D12
Support for 3D cockpit model
Each car can have it own one, but the category default is here in case not
Not implemented
Jean-Philippe with Andrew's help ?
D13
Multi-threading preparation
Start a whole code architecture / data flow review / study in order to identify how it could become multi-threaded one day and where / what changes must be done to achieve it ; if a simple first step can be found, do it
Jean-Philippe, Wolf-Dieter, Mart?
D14
New 3D graphics module
See above.
Brian
D15
Up-to-date-ness with TORCS
Se above
To do
Developers
D16
Career mode
See above
To be checked again (known problems with human driver) ; upgrade to Simplix, USR (and Kilo) robots
Mart, Jean-Philippe
D17
Network racing
See above
Work in progress, needs testing , user feedback
Brian
D18
Timed sessions
See above
Implemented for raceengineclient, need to be implemented for robots
Mart, Wolf-Dieter, Andrew
D19
Weather simulation
As a first "static" step, the weather is chosen at race start by the user or for a championship, the weather is taken on a probability in the xml track, and doesn't change, neither the track Mu (in a next post-2.0 "dynamic" step, the weather and grip could randomly change as in real life, but this may imply changes in the robots code)
Implemented, need some changes to make better readable code / xml-files
Xavier, Kilo
D20
Time-of-day simulation
See above
Implemented, need some changes to make better readable code / xml-files
Xavier, Kilo
D21
Force Feedback
See above. Decide if we use SDL or OIS or ... May also imply moving all input device code to the chosen library
Not implemented
Jean-Philippe
D22
Race pause, save to disk and ... restore
See above
?
D23
Start from the pit in practice and qualification mode
Just as in real life
(Implemented before; potential problem with pit-sharing)
Mart
D24
Allow 2 or more surfaces/sides in tracks
Even 2 would help with realism, as it is common at turn exits on the outside that there is a kerb, then a narrowing gravel trap and finally a widening grass, which just could not be made in the current system.
?
D43, D45
D25
Telemetry extraction
Add telemetry data extraction in the code (what data, what format, where to collect, ...)
Kristof, with help, Kilo?
D26
New menu controls
Support for enhanced XML descriptors (more controls, generic constants for use in the code, ...)
Work in progress, needs testing
Brian
D27
A C++ menu API
A cleaner and more modern menu API, to support enhanced XML descriptors, and make the code simpler. Also a nice step to make Python integration in the menu system simpler
Jean-Philippe, Brian?
D28
Car setup menu
See above (study what data should be editable, how to compute other necessary ones automatically, ... and prototype menu(s) layout with sd-menuview)
Brian, Kristof, Wolf-Dieter
D29
Car preview and selectable livery
See above. May imply adding a new "human garage" menu in the "Race configuration" menu sequence, and also change the "Driver select" menu
Jean-Philippe?
D30
Human car choice in race config. menu
See above. Probably through a new "human garage" menu in the "Race configuration" menu sequence
Jean-Philippe?
D31
QuickRace configuration save to disk and ... restore
See above
?
D32
More options in menus to switch off/on C/GPU demanding features
Usefull for weak configurations, or to race against more opponents, etc ...
Many ideas to collect, sort out and put into existing / new options menu
Jean-Philippe
D33
Driving assistance
See above. Study possible features and find a reasonable and consistent set to implement (see Haruna's post about that in early 2010 march
?
D34
Improved OpenAL sound
Some improvements to achieve in the OpenAL backend : unbalanced / strange levels of sound components / sources, ...
Jean-Philippe
D35
In-game music and menu sounds
See above : add support for in-game music playback and menu sounds on clicks and so on
?
D36
Optimize robots computations
Probably some of the computations that each robot does could be only done once for all at each simulation loop ; among drivers with the same genes, but may be also farther (between USRs and Simplices + Kilo) ; probably some other optimizations could be implemented ; needed inputs from the "code profiling" task
Wolf-Dieter
D37
Easier USR setups for new car sets
Improve code if possible in this purpose, as we'll get more and more car sets in the future ; The simplix skilling is nearly linear, the usr's not.
Andrew?
D38
Kilo robot
Add new robot and make it drive at least 1 car set (LS-GT1 ?)
Implemented, need little SD integration and car setup
Kilo
D39
All robots to Simplix 1-source / multiple DLLs scheme
Avoid duplicating source code in USR and Kilo
Wolf-Dieter? Andrew? Kilo?
D40
External GUI for telemetry data
Create an external tool for telemetry post-processing / analysis ; language + GUI lib to be choosed => C++ / Python + Qt 4 ?
Kristof
D41
sd-menuview tool
Preview menus through their XML descriptor without running SD ; excellent for prototyping new menus to come
Implemented, needs testing
Brian
D42
Sound Editor
Create a Sound Editor to help converting wild sound samples into SD sound engine compatible samples
Work in progress ; already usable, but more accurate analysis and synthesis algorithms to be implemented
Jean-Philippe
D43
New Track Editor
See above
Work in progress
Mart
D44
i18n
Translate the program into non-English languages
Implemented before
Mart
D45
Rewrite trackgen
Rewrite trackgen to add features like separate path
Mart
D46
Robot interface for future features
Already add a robot interface for features which will not make it to 2.0.
Mart
D47
Simpler way in the menus for first-time users
Make things more obvious for them, through a first-time "wizard" : display options menu, then "give your name" page, then control configuration menu, then simpler race type choice menu, ... etc ; integrate new ideas coming from users' feedback ; ...
?
D48
Code for parameter translation
Put code to simuv2 to change realistic parameters to ones giving realistic behavior
Kristof
D49
Review and change surface parameters
Make surface parameters concerning tire behavior more realistic.
Kristof
D50
Review robot setups after parameters have been changed
After the transition of track and car parameters and required changes in simuv2 review and if necessary correct robot setups
Wolf-Dieter
Some will probably be postponed when we'll assign priorities and make the list match with the release road map. List here the tasks that artists will have to achieve in order to implement the big targets described above. Each one has a unique Txx Id, that will not change ever, even if the task/feature is postponed or removed. In the possible assignment, names with a question mark (?) are only suggestions( please add the ? or remove your name if you are not sure or don't agree :-)
Id
Task
Description
Status
Possible assignment (dedicated sub-team)
T01
Fine tuned LS1 setups
Fine tune for better handling and robots compatibility ; valuable test-drive reports by Kristof and Kennet in the users and devel mailing list archives (early 2010)
Haruna, Kristof, Wolf-Dieter
T02
LS2 setups
To do
A first try (6 cars)
Haruna, Kristof, ?
T03
Rally car setups
To do
Andrew?, Haruna?, Xavier
T04
F1 car setups
To do
WIP (2 cars)
Xavier
T05
Indy car setups
To complete
WIP (1 car model, 14 setups/textures)
Xavier, Kristof
T07
GP1600 car setups
To complete
WIP (1 car model, 1 setup)
Kristof
T06
Cross-carset consistency
Make down force/ grip levels more realistic and consistent between different car sets, including already existing ones
To do
Kristof
Many will probably be postponed when we'll assign priorities and make the list match with the release roadmap. Each one has a unique Axx Id, that will not change ever, even if the task/feature is postponed or removed. List here the tasks that artists will have to achieve in order to implement the big targets described above. In the possible assignment, names with a question mark (?) are only suggestions( please add the ? or remove your name if you are not sure or don't agree :-)
Id
Task
Description
Status
Possible assignment (dedicated sub-team)
General
A01
Bug fixes
See above : select the ones we want to fix and fix them
To do
Artists
A02
GIMP files
should be stored in the "compressed XCF" format (natively supported by GIMP) as *.xcf.bz2
Team
A03
All RGB to PNG
Convert all textures to PNG and now all textures must be PNG
Xavier, Eckhard, Haruna
Cars
A04
Multiple liveries for cars
Design alternative liveries for selected car sets / robots
?
A05
Advanced Realism for Cars
Use Blenders texture backing for better shadings
See: Adding realism to car skins using Blender Texture Baking
Eckhard, Andrew, Haruna
A06
2048 car texture size
Any new car texture should be 2048x2048
Team
A07
1024 wheel3d texture
Any new wheel3d.png should be 1024x512
Team
A08
SC improvement
2048 textures and baked shadows, may some light optimizations,
the F360 right side needs a flipped mapping
1 of 6
Eckhard
A09
GP36 improvement
More texture details on the GP36 car set and baked shadows
Andrew, Eckhard
A10
LS1 car set
Polish the LS1 car set
templates: 4 of 7 ; liveries: 8 of 28
Haruna
A11
LS2 car set
Finish the LS2 car set
WIP in sdl-port branch (6 cars)
Haruna?
A12
F1 car set
Complete the F1 car set
WIP in sdl-port branch (2 cars)
Xavier?
A13
Indy car set
Complete the Indy car set
WIP in sdl-port branch (1 car model, 14 setups/textures)
Xavier?
A14
Rally car set
Replace the non-free and old PW set by a brand new free one, based on Andrew's one (to be resurrected) and/or Xavier's one
Andrew's set exists but how much remaining work ? Xavier's one is in sdl-port, but needs free textures and tuned setups at least
Andrew? Xavier?
A42
GP1600 car set
Complete the GP1600 car set (as a monotype one : 1 only 3D model)
WIP in sdl-port branch (1 car model, 1 setup/texture + 4 textures by Sebastian Heni)
Haruna
Tracks
A15
Fix tracks that kill FPS
Some tracks break FPS down on some sections (ex:front and back straights of Forza) ; find out why, how to fix it, and fix it ; may imply some work on the developers' side
?
A16
Alpine-1
Texture rework
DONE but not checked in yet
Eckhard
A17
G-Track-3
Texture rework and PNGed
DONE but not checked in yet
Eckhard
A18
Dirt-1
Finish rework 2 of Dirt-1
Eckhard width help from Andrew
A19
G-Track-2/ Aalborg
Texture Improvement overall, convert all *.rgb images with prefix to PNG
Eckhard
A20
Dirt-2,4,5,6
Remake all dirty tracks
Xavier, Haruna, Brian, Eckhard, Andrew?
A21
Wunstorf
Finish and add the new track by Sebastian Heni
Sebastian, Andrew, Eckhard
A22
Forza GP
Finish and add new track by Sebastian Heni ; verify textures for trademarks and Torcs name, convert to ACC
Sebastian, Andrew, Eckhard
A23
Spring
Finish rework
Eckhard
A24
Michigan Speedway
Texture rework
DONE but not checked in yet
Eckhard
A25
Salty
Finish new track
Work in progress
Kilo
A26
Long Day
Finish new track
Totally lacks environment
Kilo
A27
Petit
Track is in SDL under Gprix, Pimp it up a bit
Work in progress
Kilo
A28
St Pete Waterfront
Add new Indycar/ALMS city track with an airport runway involved
Work in progress
Kilo
A29
Nepliget
Add new track (Budapest 36GP)
Work in progress
Kilo
A30
Texas Motor Speedway or Chicagoland
Add new speedway track
Work in progress
Kilo
A31
Oval circuit set rework
We need to cover all the bases of oval circuits: 1) Arena-style half-mile oval 2) Local quarter mile dirt track 3) 2.5 mile superspeedway 4) Trioval less than 2 miles 5) An Indianapolis clone (no Indycar set would be complete without one) 6) 1 mile speedway (oval-shaped) ; Michigan and A-speedway are OK, but not the others => rework or replace ; Texas Motor Speedway or Chicagoland (see above task) are in ; Daytona can be a base for the oval race and the Daytona 24h, too
Kilo, ?
Other
A32
TrackSelect menu
Better track names, and description (with location);
update some background images to show proper texture quality of the track
Track authors, team, Eckhard
A33
Menus layout
Improved menu layout through enhanced XML descriptors (go on along 1.4.0 way)
Brian, Eckhard
A34
Pylons
Cool located pylons (country flag, track name, ...) for every track
team, Eckhard
A35
Starting line lights
For every track, on the pylons
Already done for 1 track (which ?) ; support code ready
team, Eckhard
A36
Dashboard
Improved dashboard inside game and "Wrong Way" hint
Team, Eckhard
A37
Car and Sponsor logos
All created car type and fictional racing sponsor logos should be stored in SVN under /doc/design
Team
A38
Gauges per category
Speedometer and RPM display per car category
Eckhard > GP36, SC; Haruna > LS1, TRB
A39
3D cockpit models
A default simple one for 36GP, TRB1, LS1, SC
Xavier, Andrew?
A40
Improved engine sounds
See above. For all cars to be delivered. The Sound Editor can be of great help for that. Some improvements in the OpenAL backend code could be necessary (unbalanced / strange levels of sound components / sources)
Jean-Philippe
A41
In-game music and menu sounds
See above : find free nice music (a good choice on Jamendo like this ; Adam Spade also proposed to compose for us) and menu sounds (ex: option changed, screen confirmed , screen abort at the menu Hint)
?
Wiki: ActualFeaturePlanFor20
Wiki: CreateCarsRealism
Wiki: GSOCIdeas
Wiki: Index
Wiki: MeetingFeb2010
Wiki: TheWayToRelease2