View Issue Details

IDProjectCategoryView StatusLast Update
0006052DarkRadiantGUIpublic05.08.2022 17:14
ReporterDragofer Assigned Togreebo  
PrioritynormalSeveritynormalReproducibilitysometimes
Status resolvedResolutionfixed 
Product Version3.0.0 
Target Version3.1.0Fixed in Version3.1.0 
Summary0006052: Material Editor: some declaration text is lost while editing
DescriptionIn some cases editing a mterial can lead to a loss of information:

1) example textures/darkmod/decals/webs/cobweb1: sort keywords may be changed, so i.e. "sort 5" becomes "sort close" when changing paths
2) example textures/darkmod/camera: "remoteRenderMap 232 232" is lost while blend gl_one, gl_zero is added
3) example textures/common/mirror: "mirrorRenderMap" and the "map" line are lost in the blend blend material stage
4) example textures/washroom/mirror: similar to (5), the "translate" line is lost in the "mirrorRenderMap" material stage
5) example textures/darkmod/decals/blood/blood09_fading: macros seem to be converted into their constituent keywords
6) example textures/darkmod/glass/clear_warp: "vertexprogram" is replaced with "program"
Additional InformationCloned from 0006038
TagsNo tags attached.

Activities

greebo

greebo

05.08.2022 17:13

administrator   ~0015123

ad 1) "close" is the constant with a value of "5", it's equal
ad 2) adjusted the exporter to skip the default gl_one, gl_zero blend func
ad 3) fixed
ad 4) fixed
ad 5) added ability to use DECAL_MACRO if the material is suitable
ad 6) this is equal, if the VFP value is the same it's safe to just use a single "program" instead of "vertexProgram"+"fragmentProgram" with the same argument
greebo

greebo

05.08.2022 17:14

administrator   ~0015124

On top of that, the decalInfo declaration is now editable through the Material Editor (it had been read-only before)

Related Changesets

DarkRadiant: master a7963fe1

05.08.2022 07:16

greebo


Details Diff
0006052: Don't add "_white" map expressions for newly created blend layers, not all of them need such an expression. Affected Issues
0006052
mod - radiantcore/shaders/ShaderTemplate.cpp Diff File

DarkRadiant: master 8bc55e47

05.08.2022 07:20

greebo


Details Diff
0006052: Adjust material soure generator code to export stages with mirrorRenderMap, remoteRenderMap even when no map expression is present. Affected Issues
0006052
mod - radiantcore/shaders/MaterialSourceGenerator.cpp Diff File

DarkRadiant: master 74c8f3d8

05.08.2022 07:28

greebo


Details Diff
0006052: mirrorRenderMap and RemoteRenderMap are allowed to have map expressions in their stage block Affected Issues
0006052
mod - radiantcore/shaders/MaterialSourceGenerator.cpp Diff File
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 32573ca1

05.08.2022 07:46

greebo


Details Diff
0006052: Extend material parser tests to cover the problems when parsing mirrorRenderMap and remoteRenderMap stages. Affected Issues
0006052
mod - test/Materials.cpp Diff File
mod - test/resources/tdm/materials/parsertest.mtr Diff File

DarkRadiant: master bb408aa7

05.08.2022 07:46

greebo


Details Diff
0006052: Don't disable the image map expression entry field in the case of mirrorRenderMap and remoteRenderMap Affected Issues
0006052
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: master 53255f1c

05.08.2022 08:34

greebo


Details Diff
0006052: Adjust parser to treat mirrorRenderMap dimensions optional.
The token must not be exhausted when looking for the dimensions.
Affected Issues
0006052
mod - libs/string/convert.h Diff File
mod - radiantcore/shaders/ShaderTemplate.cpp Diff File
mod - radiantcore/shaders/ShaderTemplate.h Diff File

DarkRadiant: master b0a178fc

05.08.2022 08:46

greebo


Details Diff
0006052: Adjust source generator to not write any render map dimension if they are 0,0 Affected Issues
0006052
mod - radiantcore/shaders/MaterialSourceGenerator.cpp Diff File
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 847218f9

05.08.2022 10:04

greebo


Details Diff
0006052: Add unit test cases covering the treatment of the default blend func string pair, both when parsing and exporting stages Affected Issues
0006052
mod - test/MaterialExport.cpp Diff File
mod - test/Materials.cpp Diff File
mod - test/resources/tdm/materials/parsertest.mtr Diff File

DarkRadiant: master fbf84b77

05.08.2022 10:23

greebo


Details Diff
0006052: Don't write the default blend func pair gl_one, gl_zero into the stage Affected Issues
0006052
mod - libs/materials/ParseLib.h Diff File
mod - radiantcore/shaders/MaterialSourceGenerator.cpp Diff File

DarkRadiant: master a92ea776

05.08.2022 12:10

greebo


Details Diff
0006052: Create infrastructure to set the decal info structure through the Material interface. Affected Issues
0006052
mod - include/ishaders.h Diff File
mod - radiantcore/shaders/CShader.cpp Diff File
mod - radiantcore/shaders/CShader.h Diff File
mod - radiantcore/shaders/ShaderTemplate.h Diff File
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 060ce315

05.08.2022 12:12

greebo


Details Diff
0006052: Extend Material script interface to include setDecalInfo Affected Issues
0006052
mod - plugins/script/interfaces/ShaderSystemInterface.cpp Diff File
mod - plugins/script/interfaces/ShaderSystemInterface.h Diff File

DarkRadiant: master 976bcb55

05.08.2022 12:16

greebo


Details Diff
0006052: Implement the ShaderTemplate::setDecalInfo logic Affected Issues
0006052
mod - radiantcore/shaders/ShaderTemplate.cpp Diff File
mod - radiantcore/shaders/ShaderTemplate.h Diff File
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 7674467e

05.08.2022 13:21

greebo


Details Diff
0006052: DecalInfo controls are sensitive now. Add bindings to read/write the stay and fade time values. Affected Issues
0006052
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: master 0b4ce057

05.08.2022 14:23

greebo


Details Diff
0006052: DecalInfo RGB start/end values can be modified now Affected Issues
0006052
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: master d726870d

05.08.2022 16:05

greebo


Details Diff
0006052: Add the unit test checking the DECAL_MACRO occurrences when exporting materials Affected Issues
0006052
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 42cb7ae5

05.08.2022 16:58

greebo


Details Diff
0006052: ShaderTemplate is re-evaluating macro usage on certain changes Affected Issues
0006052
mod - radiantcore/shaders/ShaderTemplate.cpp Diff File
mod - radiantcore/shaders/ShaderTemplate.h Diff File
mod - test/MaterialExport.cpp Diff File

DarkRadiant: master 0e4fc6d9

05.08.2022 17:06

greebo


Details Diff
0006052: MaterialSourceGenerator is now able to use DECAL_MACRO if the material settings are applicable Affected Issues
0006052
mod - radiantcore/shaders/MaterialSourceGenerator.cpp Diff File
mod - test/MaterialExport.cpp Diff File

Issue History

Date Modified Username Field Change
31.07.2022 16:32 greebo New Issue
31.07.2022 16:32 greebo Issue generated from: 0006038
31.07.2022 16:32 greebo Reporter greebo => Dragofer
31.07.2022 16:32 greebo Status new => acknowledged
31.07.2022 16:32 greebo Additional Information Updated
05.08.2022 06:26 greebo Relationship added related to 0006054
05.08.2022 06:27 greebo Relationship deleted related to 0006054
05.08.2022 08:57 greebo Status acknowledged => confirmed
05.08.2022 08:57 greebo Target Version => 3.1.0
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master a7963fe1
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master 8bc55e47
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master 74c8f3d8
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master 32573ca1
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master bb408aa7
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master 53255f1c
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master b0a178fc
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master 847218f9
05.08.2022 10:28 greebo Changeset attached => DarkRadiant master fbf84b77
05.08.2022 10:28 greebo Assigned To => greebo
05.08.2022 10:28 greebo Status confirmed => assigned
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master a92ea776
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 060ce315
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 976bcb55
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 7674467e
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 0b4ce057
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master d726870d
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 42cb7ae5
05.08.2022 17:12 greebo Changeset attached => DarkRadiant master 0e4fc6d9
05.08.2022 17:13 greebo Status assigned => resolved
05.08.2022 17:13 greebo Resolution open => fixed
05.08.2022 17:13 greebo Fixed in Version => 3.1.0
05.08.2022 17:13 greebo Note Added: 0015123
05.08.2022 17:14 greebo Note Added: 0015124