Activity
From 2015-10-23 to 2015-11-05
2015-11-05
- 21:24 Revision 3891c05b (github): Model Renderer: Added a couple of shaders suitable for opaque objects
- 14:07 Revision 1bbdea88 (github): Audio|Client: Cleanup
- Todo: It should now be possible to begin moving the audio components
into libgui (in the de::audio namespace)... - 13:33 Revision 0cd17e80 (github): Refactor|Audio|Client: SdlMixer::SoundChannel internal reformatting
- 11:56 Revision 1eccf87b (github): Refactor|Audio|Client: Removed sound exclusion groups from the sound cache
- There is no reason to duplicate this information alongside the sound
data in the cache, given it is always available ... - 11:32 Revision 4eab6fc8 (github): Refactor|Audio|Client: Channels do not provide handles to sound assets/resources
- Rather than require the Channels to keep track of the asset/resource
which describes the currently bound resource it ... - 08:04 Revision 482f3aa3 (github): Model Renderer: Added fog to the model shaders
- The fog start/end depths and the near/far clipping planes are passed
to the model shaders, which are expected to use ...
2015-11-03
- 19:00 Revision a4975a30 (github): libcore|Record: Use hash-based member tables for efficient lookups
- Previously these used QMap, but since there is no promise of the
members being ordered, it is better to use the more ... - 18:55 Revision b722f607 (github): Fixed|Clang: Minor compiler warnings
- 18:40 Revision 61c595dd (github): Model Renderer|libgui: Don't try to bind uniforms that don't exist
- The variables defined in the render block, outside any passes, apply
to all passes. However, if a pass uses a differe... - 03:21 Revision c14c0f88 (github): Audio|Client|Refactor: Moved more playback properties upwards into audio::Channel; cleanup
- 00:35 Revision 74f52836 (github): Audio|Client|Refactor: Moved more sound playback state to audio::Sound
- Logical Sounds now take on greater responsibility and help to guide
playback behavior rather than leaving it all up t...
2015-11-02
- 21:11 Revision 65471611 (github): Cleanup|Scripting: Macro for specializing script argument conversion
- 19:22 Revision b9d4eaf4 (github): Refactor|Cleanup: Added IObject interface, used it in various classes
- IObject represents an object that can be manipulated in Doomsday Script
as a record. - 16:51 Revision 0dc5196a (github): Refactor|Audio|Client: Replaced SFXCF_NO_UPDATE with a Channel-internal flag
- In the future, Channels should remember the PlayingMode and use this
to implement the OnceDontDelete behavior. - 16:15 Revision 49104665 (github): Audio|Client: Converted audio::Sound into an object
- Presently copyable as per it's usage in audio::Stage.
- 14:58 Revision 20c06627 (github): Audio|Client: Added an origin property to audio::Sound
- Knowing the Stage origin coordinates of currently playing sounds at a
logical level will allow the Listener to calcul... - 14:02 Revision 477130b5 (github): Audio|Client: Use an audio::Stage with the "locale" soundstage
- Allows tracking playing sounds in this context (e.g., InFine).
- 13:24 Revision 8c8a5af4 (github): Audio|Refactor|Client: Moved sound priority rating to audio::Listener
- The Listener is much better placed to calculate this rating.
- 12:55 Revision c5e8e0fa (github): Merge branch 'master' into audio-cleanup
- Conflicts:
doomsday/apps/client/src/world/worldsystem.cpp
doomsday/apps/libdoomsday/src/defs/ded.cpp - 08:35 Revision 4c8bc006 (github): Scripting|Process: Allow passing Record references in scriptCall()
- Pointers and references to Record are handled by creating a variable
in the global namespace and using that to refer ... - 08:35 Revision 318c1a6e (github): Model Renderer: Pass damage inflictor mobj to the model asset's onDamage()
- Process::scriptCall() automatically sets up a RecordValue to refer to
the object's namespace Record. - 08:35 Revision f44c8758 (github): Model Renderer: Renamed the generic model shader; added another shader
2015-11-01
- 11:35 Revision b4982a75 (github): Merge branch 'gl2-models'
- 11:31 Revision 28d77ca6 (github): Renderer|Refactor: Added tangentspace.glsl; moved lighting functions
- Doomsday will now define the symbols DENG_VERTEX_SHADER or
DENG_FRAGMENT_SHADER when it compiles vertex and fragment ... - 11:21 Revision de20d8f6 (github): Fixed|Audio|Client: Channel destruction; initial Environment update
- Ensure that playback is stopped and any attached buffer is released
before destroying the Channel.
Plus cleanup. - 07:36 Revision 5ac32bcb (github): Refactor|Audio|Client: Updated audio::System playback (de)initialization
- The plan is to dynamically allocate Channels according to the Mixer
configuration when needed, so most of the "playba... - 05:43 Revision 1407cc2a (github): Refactor|Audio|Client: Removed PluginDriver's internal IPlayer
- 05:08 Revision ca37fc64 (github): Refactor|Audio|Client: Added IChannelFactory
- Working toward making audio::Channel construction independent from
the low-level driver interfaces. - 04:19 Revision faad5465 (github): Audio|Client: Updated copyright; switched whole module to LGPL
- 03:42 Revision d14c5ccf (github): Audio|Documentation|Client: Minor apidoc improvements; cleanup
- 02:22 Revision 6eb4f07e (github): Refactor|Audio|Client: Minor audio::System internal reorganization
- 01:36 Revision 55366bd2 (github): Audio|Client: Cleanup
- 01:16 Revision 991b4daf (github): Refactor|Audio|Client: Renamed playback interface Channel::Type property
- 00:53 Revision f99502db (github): Refactor|Audio|Client: Enumerate logical audio::Channel types
- 00:12 Revision 6b510ec1 (github): Refactor|Audio|Client: Moved IDriver out of audio::System
- There is no longer a need/reason to implement this as a subcomponent
of the audio::System itself.
2015-10-31
- 23:36 Revision 0014a119 (github): Audio|Client: Cleanup; typos
- 23:21 Revision f9ef0d7d (github): Refactor|Audio|Client: Removed/relocated remnants of audio::IPlayer
- de::Record is now used as the public representation of a playback
interface and there is no longer any direct interac...
2015-10-30
- 20:38 Revision ab888726 (github): Hexen|Fixed: Breaking a suit of armor makes no sound
- Now using one of the chunks as the sound origin, so it won't stop
when original object is removed.
IssueID #2115 - 20:34 Revision b9c71c05 (github): Hexen|Fixed: Breaking a suit of armor makes no sound
- Now using one of the chunks as the sound origin, so it won't stop
when original object is removed.
IssueID #2115 - 20:12 Revision da043bb0 (github): Cleanup
- 20:11 Revision da2c7c0b (github): Scripting|Model Renderer: Added bindings for StateAnimator
- Currently only has a method for listing currently playing sequences.
- 20:10 Revision 1885e89d (github): Cleanup|libcore: Accessing built-in script classes; setting super record
- 18:10 Revision 40de768c (github): Scripting|Scheduler: Added a method for checking if a scheduler has finished
- 18:06 Revision cd9e8f11 (github): Cleanup|Refactor: Use "names" as method name for accessing a namespace record
- 13:56 Revision 28cbafca (github): Refactor|World|Client: Reacting to mobj damage
- The client is now notified of damage to mobjs via MobjThinkerData.
It can then spawn particle generators and check if... - 13:18 Revision 5ed9b064 (github): Common|libdoomsday: Damage to mobjs applied via libcommon
- `Mobj_InflictDamage()` applies damage to a mobj and notifies the
engine via MobjThinkerData.
Particle generator spaw... - 13:14 Revision 5f2ea4fd (github): Scripting: Added a utility for calling script functions from native code
- Makes it easier to call script functions from native code, with
arbitrary parameters passed in the function call. Use... - 13:11 Revision a851200b (github): Fixed|libcore: PackageLoader reports Doomsday Script parsing errors
- The exception from the Parser was hitherto uncaught.
- 13:09 Revision a7f067d5 (github): Cleanup
- 13:09 Revision 5cb3495d (github): libcore|Scripting: RecordValue is now derived from RecordAccessor
- Easier to access contents of the record.
- 08:33 Revision 3f11e13f (github): API|Map: Use const mobj arguments in SpawnDamageParticleGen()
- 08:31 Revision c1581910 (github): libdoomsday: Allow game plugins to include libdoomsday's world/mobj.h
- Workaround until the mobj situation is resolved with a cleaner
architecture. - 03:44 Revision 7ff286b1 (github): Audio|Client: Moved more logic into audio::Listener; cleanup
2015-10-29
- 19:00 Revision 7698a97a (github): Renderer|Refactor: Moved general purpose shader functions to GLSL files
- In the "net.dengine.client.renderer" pack, shaders/include/ contains
GLSL files with functions useful for many shader... - 15:21 Revision 3a5e399b (github): Refactor|Audio|Client: Reformatted PluginDriver::SoundChannel buffer attachment
- 14:44 Revision 2ebd88c2 (github): Audio|Client: Cleanup
- 10:51 Revision fbe5f621 (github): Fixed|Refactor|Thinker|Hexen: Mobj-on-mobj checks shouldn't duplicate the mobj
- When performing a check of whether a mobj was resting on another mobj,
Hexen would duplicate the entire thinker (!), ... - 09:07 Revision d0ce736b (github): Fixed|Model Renderer: Animation triggering when state changes multiple times
- Sometimes a mobj's state changes more than once before the mobj thinks.
ClientMobjThinkerData is now a bit smarter in...
2015-10-28
- 20:54 Revision b5d43831 (github): Refactor|Record: Record member navigation; renamed addRecord()
- The term "subrecord" is used to mean a record owned by another record.
However, the member (.) notation (for instanc... - 18:52 Revision 13eac2d6 (github): Cleanup
- 17:29 Revision f52aa56c (github): Scripting|World: Added the World.Thing class for mobj bindings
- MobjThinkerData's info record is now an object derived from World.Thing.
It identifies the mobj using its ID number, ... - 17:25 Revision 726462fe (github): Cleanup
- 11:42 Revision e776aef3 (github): Refactor|Audio|Client: audio::Channel is now de::Deletable
- However one cannot freely delete them (yet) because the audio drivers
retain ownership in order to ensure that refres... - 07:50 Revision 1147eb4e (github): Audio|Client: Cleanup
- 06:53 Revision fa3abeff (github): Audio|Client: Removed superfluous logic/state variables from DummyDriver
- 04:22 Revision 3c5ddee7 (github): Audio|Client: Perform initial Environment updates when Channel playback begins
- There is no longer a need for the driver to expose this API - if the
driver supports environmental audio we can defer... - 02:54 Revision 867b216f (github): Audio|Listener|Client: Use of Environments are enabled/disabled at Listener level
- Any changes affecting Channels which are observing the Listener will
be applied at the usual times (when playback beg... - 01:47 Revision b7f229c7 (github): Refactor|Audio|Client: Defer SFXLP_PRIMARY_FORMAT setup
- Only PluginDriver is concerned with primary buffer configuration (for
Direct Sound). We can defer this setup until th... - 00:48 Revision 3161d9a8 (github): Refactor|Audio|Client: Moved Channel construction upwards into IDriver
- As the "playback interface" abstraction is a driver specific concern
the IDriver API should not assume that there are...
2015-10-27
- 23:36 Revision 7511ea93 (github): Refactor|Audio|Client: Moved playback interface objects into their respective driver
- As the driver and interface implementations share code it make sense
for the IDriver derived class to contain these s... - 17:22 Revision aa444f87 (github): libcore|Info: Report a syntax error if block attribute is missing a value
- Avoids the pitfall of `name inherits other {`, which is actually
interpreted as block type "name", block name "inheri... - 08:33 Revision ee3d427b (github): Fixed|Model Renderer: Rendering passes were indexed incorrectly
- When enabling and disabling rendering passes, the incorrect ones
were being accessed, due to the setup not processing...
2015-10-26
- 21:14 Revision 462f7292 (github): Fixed|Qt: Workaround for older Qt 5 compatibility
- QVector::removeAll() was added in Qt 5.4.
- 20:41 Revision 4736fc61 (github): Fixed|libgui: Unbinding shadowed uniforms from a GLProgram
- 20:41 Revision 3304564b (github): libcore|PackageLoader: Log syntax errors in package metadata
- 19:34 Revision f0ec6b89 (github): Merge branch 'gl2-models'
- 19:34 Revision 92e05b26 (github): Fixed|Model Renderer: Use model's atlas when drawing; fixed shutdown crash
- Also removed the default textures, since they would have to be allocated
separately for each model, in the model's al... - 17:57 Revision 7553e085 (github): Refactor|Model Renderer: Use MultiAtlas; got rid of AuxiliaryData
- The client now derives its own version of ModelDrawable, so that there
is no need to maintain the separate AuxiliaryD... - 17:52 Revision 4da31507 (github): Refactor|ModelBank|libgui: Custom model objects in a ModelBank
- ModelBank now can be configured to use any type of ModelDrawable
derived objects. - 17:51 Revision b06e7e68 (github): libgui|ModelDrawable: Commit textures are initialization complete
- When using IAtlas, commit() is expected after all the images have been
allocated. MultiAtlas::AllocGroup will then de... - 17:49 Revision 6084dea4 (github): libgui|MultiAtlas: Added a clear() method to release all atlases
- 07:32 Revision 18428230 (github): Refactor|Audio|Client: Unified API for playing of audio::Channels
- One now "binds" a data buffer/stream/track via specialized subclass
methods before then simply play()'ing the channel...
2015-10-25
- 22:11 Revision c037512f (github): Refactor|libgui: Added abstract IAtlas interface
- More flexibility for TextureBank and ModelDrawable:
MultiAtlas::AllocGroup can be used instead of a regular atlas. - 22:04 Revision 7a952fd5 (github): Model Renderer: Added a "uAlpha" variable for the default model shader
- 22:03 Revision b2b64247 (github): libgui|GLShaderBank: Default uniform values for shaders
- The shader definition can now declare default uniforms to specify
particular initial values. When the programs are us... - 22:00 Revision 56cd3d9e (github): libgui: Binding multiple overriding uniforms to a GLProgram
- GLProgram now keeps track of when uniforms override previously bound
uniforms. - 21:57 Revision 9e7303e2 (github): Refactor|Model Renderer: Cleanup
- 18:21 Revision 71b9f8ef (github): libgui: Added MultiAtlas: expanding collection of atlases
- One atlas cannot hold an infinite number of images, but a MultiAtlas
can.
Atlas was modified to allow making allocat... - 03:08 Revision 5cb3875f (github): Refactor|Audio|System: Continued to re-architect the audio subsystem
- Taken into use the new audio components and began restructuring the
audio::System itself for separating concerns alon... - 02:44 Revision bab73378 (github): Audio|Client: SampleCache is Client only (removed unused Server functionality)
- 02:43 Revision 7d1302e5 (github): Refactor|Definitions: Renamed AudioEnvironment as AudioEnvironmentDef
- Avoids confusion with the similarly named audio::Environment
Todo for later: We should make these user-definable (at... - 01:32 Revision 658f4da0 (github): Audio|Client: Added audio::Mixer (stub)
- audio::Mixer provides a specialized audio::Channel mapper and offers
grouping of channels into logical audio "tracks"... - 01:10 Revision e5a37cf9 (github): Audio|Client: Added audio::Listener and audio::Stage
- audio::Listener provides a logical model of a soundstage entity which
perceives the audible "world" around it. Note t... - 00:54 Revision c2e62f6a (github): SectorCluster|World|Client: Provide notification when the effective audio::Environment changes
- 00:50 Revision 26f54165 (github): Audio|Client: Added audio::Environment POD struct
- For representing effective audio environment characteristics (such as
those provided by SectorCluster). - 00:42 Revision 8666b4f0 (github): Map|World: Provide notification when a mobj is (re)linked into the BSP
- de::Map now provides notification whenever a map object is (re)linked
into the BSP.
Todo for later: Ideally this aud... - 00:13 Revision 0d5717fe (github): OpenAL: Offer EAX 2.0 for audio environment simulation on Windows
- If the EAX package is available and enabled at runtime, make use of
EAX 2.0 for simulating environmental audio effect... - 00:06 Revision 20cc47a6 (github): CMake|DirectSound|Windows: Added DENG_ENABLE_EAX option; DirectSound cleanup
- One can now disable the EAX 2.0 build time requirement and usage at
runtime. Enabled by default.
Presently only used...
2015-10-24
- 23:51 Revision a0044d94 (github): Merge branch 'master' into audio-cleanup
- Conflicts:
doomsday/apps/client/src/clientapp.cpp
doomsday/apps/client/src/dd_main.cpp - 21:35 Revision 33579daa (github): libcore: Added SourceLineTable, used it in Info and ScriptedInfo
- All parsed ScriptedInfo records and their subrecords have __source__
variables indicating the source code location of... - 14:13 Revision f9896168 (github): Bumped version number to 1.15.5
- 11:40 Revision 38896973 (github): libgui|ModelDrawable: Don't try to load textures twice
- A bank loads items when needed, so calling `load()` is redundant.
- 11:39 Revision e7796c17 (github): libcore|Bank: Improved log output from Bank
- If loading fails, don't make a "loaded" log entry.
- 11:11 Revision bdb380eb (github): libgui|ModelDrawable: More detailed warning message about failed texture loads
- Specify mesh and material indices and origin of the information.
2015-10-23
- 20:54 Revision 74fdc980 (github): Merge branch 'gl2-models'
- 20:53 Revision 1b5b2c0d (github): Fixed|Client: Improper deinit after mobj model asset init failure
- If a mobj's model asset initialization failed, the mobj was still
kept in the model's deletion audience. The model en... - 19:09 Revision 55bdd860 (github): Fixed|Model Renderer: Added missing "material" variable
- If no `render.material` was specified in the model, StateAnimator would
not create a "material" variable at all for a... - 19:08 Revision 76a9540c (github): Fixed|Model Renderer: Added missing "material" variable
- If no `render.material` was specified in the model, StateAnimator would
not create a "material" variable at all for a...
Also available in: Atom