Quite right. To explain myself, I think the viewer is getting too bloated for the "average" machine and offered plugins as a way to possibly mitigate that bloat as well as allow for expansion in other ways unforeseen. What I am really getting at is the very same thing you are speaking to here with the headless viewer for example. One way to do that would be to have a plugin for the GL renderer that does nothing. One could even make an ascii renderer a la ascii quake ;) The script editor is another excellent candidate for a plugin style framework, imho.
Ultimately the goal is, I think, to move toward decoupling the various sub-systems and from the sounds of it, the Lab is trying to move toward that as well. How exactly that is done is another matter and given the current codebase, I appeciate somewhat the problems inherent. I threw plugins in as simply one possible direction to help manage the inevitable bloat that long lived code bases, driven by enthusiastic coders, accumulates. I picked on voice and windlight simply because for me, those are things I am personally not interested in. No offense intended, nor did I mean to speak directly to the technical issues involved in "plugifying" those particular things :) cheers! JB On Thu, Apr 30, 2009 at 7:51 PM, Jan Ciger <[email protected]> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > [email protected] wrote: > > On 29 Apr 2009, at 20:45, JB Kraft wrote: > > > >> Perhaps a more modular approach, plugin style, might be considered. > >> From my own usage and perspective, voice and windlight would be the > >> first two .so's to go. > > > > A plugin architecture for the client would be incredibly useful, and > > I've promoted the idea in my own small way (rather than "hey, you want > > something different? Build and release your own client!") for a couple > > of years now. > > Um, folks - and how exactly do you want the renderer (Windlight) to be a > removable plugin? Windlight (as technology) are basically just > programmable shaders. If you remove that (turning off shaders in > preferences does the same), you have more or less the old style 1.18 > viewer, graphics-wise. What exactly would this as a plugin achieve? The > shaders are not in the main memory - they run on the GPU, so you do not > even save that by not loading them. > > Voice mentioned by JB Kraft is not even integrated in the viewer itself, > it is an external application that you do not need to run if you do not > want it and the viewer will work even if it is not present. So what > plugin are we talking about? The few floaters for controlling it? > > Plugins make things needlessly complex and are not useful as a general > design approach for core functionality. Furthermore, the viewer doesn't > even use shared libraries yet (everything statically linked, with the > exception of few a things loaded dynamically - FMOD, gstreamer, etc). > *THAT* is what needs to be fixed, not jumping up and down about plugins > as a panacea. > > I am trying to build a headless client based on the C++ sources for > research right now, and thanks to rather poor modularization it is > pretty difficult to do. I need to duplicate an re-implement quite a bit > of functionality that is in the viewer already (e.g. LLAgent, LLWearable > classes), because unless I want to pull in dependencies on XUL, the > viewer UI and what not even for basic things like setting agent's > appearance inworld I cannot use them. That is what needs to be fixed - > once it is done, you can pretty much build whatever client you want and > you do not need any "plugins". > > Regards, > > Jan > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org > > iD8DBQFJ+jmPn11XseNj94gRAixIAJ42uqqUpOrC0iVotd65dSFMuy3/YwCgiiN9 > RvgI55LUd/uRQBY6hF7JX8c= > =hlIx > -----END PGP SIGNATURE----- > _______________________________________________ > Policies and (un)subscribe information available here: > http://wiki.secondlife.com/wiki/SLDev > Please read the policies before posting to keep unmoderated posting > privileges >
_______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/SLDev Please read the policies before posting to keep unmoderated posting privileges
