radiance 3.4 and open source development greg ward

15

Click here to load reader

Upload: henry-shelton

Post on 19-Jan-2018

212 views

Category:

Documents


0 download

DESCRIPTION

Radiance Development History  First Official Release 1.0 in January 1989  LBNL Releases through 3.1 in July 1997  Code Split Three Ways:  LBNL MPI parallel rendering development  LBNL Desktop Radiance development  SGI Holodeck development  New Release 3.4 in January 2002

TRANSCRIPT

Page 1: Radiance 3.4 and Open Source Development Greg Ward

Radiance 3.4 and Open Radiance 3.4 and Open Source DevelopmentSource Development

Greg WardGreg Ward

Page 2: Radiance 3.4 and Open Source Development Greg Ward

Talk OverviewTalk Overview

RadianceRadiance Development History Development History The GoodThe Good The Bad and the UglyThe Bad and the Ugly

RadianceRadiance 3.4 3.4 What is ThereWhat is There What is MissingWhat is Missing

Open Source DevelopmentOpen Source Development

Page 3: Radiance 3.4 and Open Source Development Greg Ward

RadianceRadiance Development History Development History

First Official Release 1.0 in January 1989First Official Release 1.0 in January 1989 LBNL Releases through 3.1 in July 1997LBNL Releases through 3.1 in July 1997 Code Split Three Ways:Code Split Three Ways:

LBNL MPI parallel rendering developmentLBNL MPI parallel rendering development LBNL LBNL Desktop RadianceDesktop Radiance development development SGI Holodeck developmentSGI Holodeck development

New Release 3.4 in January 2002New Release 3.4 in January 2002

Page 4: Radiance 3.4 and Open Source Development Greg Ward

The Good: 1 Primary AuthorThe Good: 1 Primary Author

Code consistency & reliabilityCode consistency & reliability A feeling of responsibilityA feeling of responsibility An ultimate source for technical answersAn ultimate source for technical answers

Page 5: Radiance 3.4 and Open Source Development Greg Ward

The Good: Advanced UsersThe Good: Advanced Users

Difficult but powerful software attracts Difficult but powerful software attracts talented userstalented users

Talented users have good ideasTalented users have good ideas Talented users have interesting problems Talented users have interesting problems Interesting problems stress-test algorithmsInteresting problems stress-test algorithms Some researchers even validate their Some researchers even validate their

simulationssimulations

Page 6: Radiance 3.4 and Open Source Development Greg Ward

The Good: The Good: Rendering with Rendering with RadianceRadiance

Author wrote intro. and technical chaptersAuthor wrote intro. and technical chapters Rob Shakespeare wrote tutorial chaptersRob Shakespeare wrote tutorial chapters Other talented users wrote application Other talented users wrote application

chapterschapters Charles Ehrlich on Lighting AnalysisCharles Ehrlich on Lighting Analysis John Mardaljevic on DaylightingJohn Mardaljevic on Daylighting Erich Phillips on Roadway LightingErich Phillips on Roadway Lighting Peter Apian-Bennewitz on AnimationPeter Apian-Bennewitz on Animation

Page 7: Radiance 3.4 and Open Source Development Greg Ward

The Bad and the UglyThe Bad and the Ugly

Being the primary author meant that when I Being the primary author meant that when I left LBNL, development fragmentedleft LBNL, development fragmented Code branches diverged even within LBNLCode branches diverged even within LBNL Technical support also sufferedTechnical support also suffered

Old-style C code was never updatedOld-style C code was never updated(My excuse -- it still works!)(My excuse -- it still works!)

Some code developments could be lostSome code developments could be lost

Page 8: Radiance 3.4 and Open Source Development Greg Ward

RadianceRadiance 3.4: What is There 3.4: What is There

Holodeck rendering systemHolodeck rendering system New and improved ray tracing utilitiesNew and improved ray tracing utilities

vwraysvwrays and new and new rtracertrace options options Bug fixes and improvementsBug fixes and improvements

glradglrad program for OpenGL rendering program for OpenGL rendering xformxform -f option for faster scene generation -f option for faster scene generation Increased max. scene complexityIncreased max. scene complexity New fonts (New fonts (VerdanaVerdana, , PixPix))

Page 9: Radiance 3.4 and Open Source Development Greg Ward

RadianceRadiance 3.4: What is Missing 3.4: What is Missing

David Robertson’s optimizationsDavid Robertson’s optimizations Hooks for compiled patterns in CHooks for compiled patterns in C Portability and readability improvementsPortability and readability improvements MPI support for parallel renderingMPI support for parallel rendering

Windows port and additionsWindows port and additions ximageximage and and rviewrview replacements replacements

Page 10: Radiance 3.4 and Open Source Development Greg Ward

Open Source DevelopmentOpen Source Development

Open Source definitionOpen Source definition Open Source and Open Source and RadianceRadiance How will this affect How will this affect RadianceRadiance developers? developers? How will this affect How will this affect RadianceRadiance users? users?

Page 11: Radiance 3.4 and Open Source Development Greg Ward

Open Source DefinitionOpen Source Definition

Free program distributionFree program distribution Must include original source codeMust include original source code Must be free (or cost of distribution)Must be free (or cost of distribution) Must allow redistribution and derivative workMust allow redistribution and derivative work

Permits restriction that derivatives be Permits restriction that derivatives be patched from authors’ original sourcepatched from authors’ original source

Adds “no discrimination” clausesAdds “no discrimination” clauses

Page 12: Radiance 3.4 and Open Source Development Greg Ward

Open Source and Open Source and RadianceRadiance

Until now, anyone wishing to redistribute Until now, anyone wishing to redistribute any version of any version of RadianceRadiance required a license required a license A two-year, renewable license cost $10000A two-year, renewable license cost $10000 Approximately 10 licenses were soldApproximately 10 licenses were sold

Beginning December 1, 2002, LBNL will Beginning December 1, 2002, LBNL will make make RadianceRadiance available as Open Source available as Open Source Code was always available -- now you may Code was always available -- now you may

build on it and share your additionsbuild on it and share your additions

Page 13: Radiance 3.4 and Open Source Development Greg Ward

How Will Open Source Affect How Will Open Source Affect RadianceRadiance Developers? Developers?

In the past, developers had to offer their In the past, developers had to offer their patches to patches to RadianceRadiance source separately -- source separately -- now, they can distribute complete packagenow, they can distribute complete package

Companies wishing to capitalize on Companies wishing to capitalize on RadianceRadiance may do so without a license may do so without a license

Code branching may be a problemCode branching may be a problem

Page 14: Radiance 3.4 and Open Source Development Greg Ward

How Will Open Source Affect How Will Open Source Affect RadianceRadiance Users? Users?

New versions may have new capabilitiesNew versions may have new capabilities New products may become availableNew products may become available New sources of technical expertiseNew sources of technical expertise Questions may arise as to simulation Questions may arise as to simulation

integrityintegrity

Page 15: Radiance 3.4 and Open Source Development Greg Ward

The Future Is YoursThe Future Is Yours

The future of The future of RadianceRadiance depends on depends on interested users and developersinterested users and developers

I will continue to be involved and available I will continue to be involved and available for consultation at some levelfor consultation at some level

Much of the work is in derivative software Much of the work is in derivative software applications that utilize applications that utilize RadianceRadiance core core lighting & daylighting simulation enginelighting & daylighting simulation engine