View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006062 | DarkRadiant | Map Editing | public | 07.08.2022 13:06 | 23.07.2024 11:36 |
Reporter | Dragofer | Assigned To | greebo | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 3.0.0 | ||||
Target Version | 3.1.0 | Fixed in Version | 3.1.0 | ||
Summary | 0006062: Moving speakers deletes distance spawnargs if they're the same as in shader | ||||
Description | Newly created speakers will have s_mindistance and s_maxdistance spawnargs set to the same values as in the soundshader. If the soundshader specifies no values, the speaker will have a min of 0 and max of 10. The issue is that as soon as the speaker is moved, these distance spawnargs will be deleted if they have the same value as in the soundshader. If the soundshader doesn't specify the distance, then the spawnargs will be deleted if they have a value of 0 (happens often with s_mindistance). The speaker radius doesn't appear to change as a result. Other spawnargs like s_volume don't seem to get deleted. | ||||
Additional Information | 1) Create a speaker with the shader automaton_utilize. This will be created with the spawnargs s_mindistance 1 and s_maxdistance 30, as defined in the soundshader. 2) Move the speaker. Both distance spawnargs are deleted. | ||||
Tags | No tags attached. | ||||
DarkRadiant: master 0a01a20d 18.08.2022 17:18 Details Diff |
0006062: Add unit test covering speaker creation and move operation |
Affected Issues 0006062 |
|
mod - test/Entity.cpp | Diff File | ||
mod - test/resources/tdm/sound/parsing_test.sndshd | Diff File | ||
DarkRadiant: master 541f2638 18.08.2022 17:22 Details Diff |
0006062: Don't clear s_min/s_max on speakers if the values match the sound shader declaration, unconditionally write the radii to the entity key values. |
Affected Issues 0006062 |
|
mod - radiantcore/entity/speaker/SpeakerNode.cpp | Diff File | ||
DarkRadiant: master 09e5ec1c 21.04.2024 19:33 Details Diff |
Avoid creating speaker min/max spawnargs when moving a speaker Instead of unconditionally creating min/max distance spawnargs in SpeakerNode::freezeTransform, we now write them under two different conditions: if the modified speaker radii differ from the shader default, or if there were already min/max spawnargs to begin with. This prevents creating redundant spawnargs just because a speaker was moved, but also will not remove existing spawnargs just because they happen to match the shader default (which was the original complaint in 0006062). |
Affected Issues 0006062 |
|
mod - radiantcore/entity/speaker/SpeakerNode.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
07.08.2022 13:06 | Dragofer | New Issue | |
07.08.2022 13:18 | Dragofer | Description Updated | |
07.08.2022 13:19 | Dragofer | Description Updated | |
07.08.2022 16:46 | greebo | Status | new => acknowledged |
18.08.2022 17:00 | greebo | Status | acknowledged => confirmed |
18.08.2022 17:00 | greebo | Assigned To | => greebo |
18.08.2022 17:00 | greebo | Status | confirmed => assigned |
18.08.2022 17:22 | greebo | Changeset attached | => DarkRadiant master 0a01a20d |
18.08.2022 17:22 | greebo | Changeset attached | => DarkRadiant master 541f2638 |
18.08.2022 17:22 | greebo | Target Version | => 3.1.0 |
18.08.2022 17:22 | greebo | Status | assigned => resolved |
18.08.2022 17:22 | greebo | Resolution | open => fixed |
18.08.2022 17:22 | greebo | Fixed in Version | => 3.1.0 |
13.01.2024 05:31 | greebo | Status | resolved => closed |
23.07.2024 11:36 | orbweaver | Changeset attached | => DarkRadiant master 09e5ec1c |