View Issue Details

IDProjectCategoryView StatusLast Update
0005567DarkRadiantRendererpublic03.04.2021 06:32
Reportergreebo Assigned Togreebo  
PrioritynormalSeveritynormalReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version2.11.0 
Target Version2.12.0Fixed in Version2.12.0 
Summary0005567: Material Editor: Basic Mode GUI
DescriptionAfter the full-blown part of the editor is working, the material editor should get its basic mode tab set up with controls to serve the most common workflows.
It should still be possible to switch between the basic and advanced tabs anytime without dropping any information from the material.
TagsNo tags attached.

Relationships

child of 0005572 resolvedgreebo Material Editor 

Activities

There are no notes attached to this issue.

Related Changesets

DarkRadiant: material_editor_basic b92e5a93

2021-03-30 18:53:19

greebo

Details Diff
0005567: Start working on a basic GUI. Add VfsImageArtProvider to be able to load the raw texture images into wxBitmaps. Affected Issues
0005567
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
mod - radiant/ui/materials/editor/MaterialEditorModule.cpp Diff File
add - radiant/ui/materials/editor/VfsImageArtProvider.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: material_editor_basic 0e9e5fab

2021-03-30 19:22:36

greebo

Details Diff
0005567: Image loading is roughly working, with lots of memory allocations Affected Issues
0005567
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
mod - radiant/ui/materials/editor/VfsImageArtProvider.h Diff File

DarkRadiant: material_editor_basic 12012a43

2021-04-01 15:29:02

greebo

Details Diff
0005567: Add custom TexturePreview widget to display the map image of certain material stages. This can implicitly deal with precompressed DDS images and spares the load time since the MaterialEditor's own preview already loaded these textures anyway. Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
mod - libs/wxutil/XmlResourceBasedWidget.h Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
add - radiant/ui/materials/editor/TexturePreview.h Diff File
mod - radiant/ui/materials/editor/VfsImageArtProvider.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: material_editor_basic ae55e982

2021-04-01 15:30:52

greebo

Details Diff
0005567: Remove VfsImageArtProvider again, it's not needed anymore Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditorModule.cpp Diff File
rm - radiant/ui/materials/editor/VfsImageArtProvider.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

DarkRadiant: material_editor_basic 6df9b2b2

2021-04-01 17:04:49

greebo

Details Diff
0005567: Minor WIP commit Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
mod - radiant/ui/materials/editor/TexturePreview.h Diff File

DarkRadiant: material_editor_basic d7cba4c7

2021-04-01 18:07:12

greebo

Details Diff
0005567: One more WIP version Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic 3b573311

2021-04-01 18:27:03

greebo

Details Diff
0005567: Rearrange the table Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File

DarkRadiant: material_editor_basic affe5a29

2021-04-02 03:21:18

greebo

Details Diff
0005567: Load values into controls Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: material_editor_basic bc0f15c6

2021-04-02 03:48:29

greebo

Details Diff
0005567: Update existing material stages when changing the basic controls Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: material_editor_basic 95853859

2021-04-02 03:59:28

greebo

Details Diff
0005567: Load name/description/type into basic controls, update advanced page if changed and vice versa Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic c364a9b1

2021-04-02 04:03:10

greebo

Details Diff
0005567: Name update handling Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: material_editor_basic 0c887875

2021-04-02 04:40:06

greebo

Details Diff
0005567: Adding/removing stages in basic mode is working now Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File

DarkRadiant: material_editor_basic c29cb378

2021-04-02 04:47:20

greebo

Details Diff
0005567: Make sure editor image expression is carried over when cloning templates Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiantcore/shaders/ShaderTemplate.cpp Diff File

DarkRadiant: material_editor_basic da2f609c

2021-04-02 04:50:51

greebo

Details Diff
0005567: Prevent stage hiding for read-only materials Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic 9f781fb5

2021-04-02 04:54:23

greebo

Details Diff
0005567: Allow switching through notebook tabs for read-only materials Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic 35960fc3

2021-04-02 05:00:03

greebo

Details Diff
0005567: Show transform table headers Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic 024d783b

2021-04-02 05:07:04

greebo

Details Diff
0005567: Fix initial size of dialog if no settings are found in the registry Affected Issues
0005567
mod - libs/wxutil/WindowPosition.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic 32ebdcc4

2021-04-02 06:10:47

greebo

Details Diff
0005567: Add frob stage setup helper, and a set of failing unit test cases Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - install/ui/materialeditor.xrc Diff File
add - libs/materials/FrobStageSetup.h Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.h Diff File
mod - test/Materials.cpp Diff File
mod - test/resources/tdm/materials/parsertest.mtr Diff File
mod - tools/msvc/libs.vcxproj Diff File
mod - tools/msvc/libs.vcxproj.filters Diff File

DarkRadiant: material_editor_basic 77a1d500

2021-04-02 06:36:52

greebo

Details Diff
0005567: Frob stage detection code Affected Issues
0005567
mod - libs/materials/FrobStageSetup.h Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - test/Materials.cpp Diff File

DarkRadiant: material_editor_basic f2b17e62

2021-04-02 07:19:29

greebo

Details Diff
0005567: Basic setup for testing the frob-highlights Affected Issues
0005567
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
mod - radiant/ui/materials/editor/MaterialPreview.cpp Diff File
mod - radiant/ui/materials/editor/MaterialPreview.h Diff File

DarkRadiant: material_editor_basic 33fcbc48

2021-04-02 07:45:57

greebo

Details Diff
0005567: Implement adding frob stages Affected Issues
0005567
mod - libs/materials/FrobStageSetup.h Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - test/Materials.cpp Diff File

DarkRadiant: material_editor_basic 19ca94a1

2021-04-02 07:57:44

greebo

Details Diff
0005567: Implement frob stage removal Affected Issues
0005567
mod - libs/materials/FrobStageSetup.h Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - test/Materials.cpp Diff File

DarkRadiant: material_editor_basic 079e9bdd

2021-04-02 08:00:49

greebo

Details Diff
0005567: Fix unit tests running into double equality problems Affected Issues
0005567
mod - test/math/MatrixUtils.h Diff File

DarkRadiant: material_editor_basic 699a3fd2

2021-04-02 08:10:30

greebo

Details Diff
0005567: Some materials are using _white.tga instead of _white in frob stages Affected Issues
0005567
mod - libs/materials/FrobStageSetup.h Diff File
mod - test/Materials.cpp Diff File
mod - test/resources/tdm/materials/parsertest.mtr Diff File

DarkRadiant: material_editor_basic 71a4e643

2021-04-02 08:14:36

greebo

Details Diff
0005567: Adding/removing frob stages is ok now Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic adf85c86

2021-04-02 08:35:29

greebo

Details Diff
0005567: Make the unlock button more prominent Affected Issues
0005567
mod - install/ui/materialeditor.fbp Diff File
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic a04750fc

2021-04-02 13:32:33

greebo

Details Diff
0005567: getBlendFunc() needs to return GL-compatible values. Since the blend func strings stored in the layer can also have the DBS shortcuts "specularmap" or "bumpmap", we need to handle those too. They are used as blend mode for the editor pass as well, so this fixes the roundtop windows being rendered as black in the non-lit render mode. Affected Issues
0005567
mod - radiantcore/shaders/Doom3ShaderLayer.cpp Diff File

DarkRadiant: material_editor_basic 686a8074

2021-04-02 14:33:01

greebo

Details Diff
0005567: Blend layers are supposed to be drawn on other fragments, set the depth function to GL_LEQUAL to prevent the depth test from culling all blend fragments. Affected Issues
0005567
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File

DarkRadiant: material_editor_basic 3e84e953

2021-04-02 16:20:40

greebo

Details Diff
0005567: Don't render a black material if one of the DBS stages is disabled Affected Issues
0005567
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File
mod - radiantcore/shaders/Doom3ShaderLayer.cpp Diff File

DarkRadiant: material_editor_basic ca2fbe5f

2021-04-03 05:11:15

greebo

Details Diff
0005567: Update add/remove frob stage buttons when adding/removing a diffuse map Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File

DarkRadiant: material_editor_basic f02882f2

2021-04-03 06:14:45

greebo

Details Diff
0005567: Add VirtualFileSystem.getFileInfo method to specifically ask for the vfs::FileInfo structure of a particular file.
Add some unit test coverage to these new functions.
Affected Issues
0005567
mod - include/iarchive.h Diff File
mod - include/ifilesystem.h Diff File
mod - libs/os/path.h Diff File
mod - radiantcore/vfs/DirectoryArchive.h Diff File
mod - radiantcore/vfs/Doom3FileSystem.cpp Diff File
mod - radiantcore/vfs/Doom3FileSystem.h Diff File
mod - radiantcore/vfs/ZipArchive.h Diff File
mod - test/Basic.cpp Diff File
mod - test/VFS.cpp Diff File

DarkRadiant: material_editor_basic 60a02318

2021-04-03 06:21:34

greebo

Details Diff
0005567: Newly created materials are no longer set to locked after saving Affected Issues
0005567
mod - radiant/ui/materials/editor/MaterialEditor.cpp Diff File
mod - radiantcore/shaders/Doom3ShaderSystem.cpp Diff File

Issue History

Date Modified Username Field Change
22.03.2021 11:13 greebo New Issue
22.03.2021 11:13 greebo Assigned To => greebo
22.03.2021 11:13 greebo Status new => confirmed
22.03.2021 11:15 greebo Relationship added child of 0005532
23.03.2021 07:02 greebo Relationship added child of 0005572
23.03.2021 07:02 greebo Relationship deleted child of 0005532
02.04.2021 04:05 greebo Assigned To greebo =>
02.04.2021 04:05 greebo Target Version => 2.12.0
02.04.2021 04:05 greebo Assigned To => greebo
02.04.2021 04:05 greebo Status confirmed => assigned
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic b92e5a93
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 0e9e5fab
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 12012a43
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic ae55e982
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 6df9b2b2
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic d7cba4c7
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 3b573311
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic affe5a29
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic bc0f15c6
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 95853859
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic c364a9b1
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 0c887875
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic c29cb378
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic da2f609c
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 9f781fb5
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 35960fc3
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 024d783b
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 32ebdcc4
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 77a1d500
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic f2b17e62
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 33fcbc48
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 19ca94a1
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 079e9bdd
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 699a3fd2
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 71a4e643
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic adf85c86
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic a04750fc
02.04.2021 15:25 greebo Changeset attached => DarkRadiant material_editor_basic 686a8074
03.04.2021 05:00 greebo Changeset attached => DarkRadiant material_editor_basic 3e84e953
03.04.2021 06:21 greebo Changeset attached => DarkRadiant material_editor_basic ca2fbe5f
03.04.2021 06:21 greebo Changeset attached => DarkRadiant material_editor_basic f02882f2
03.04.2021 06:21 greebo Changeset attached => DarkRadiant material_editor_basic 60a02318
03.04.2021 06:32 greebo Status assigned => resolved
03.04.2021 06:32 greebo Resolution open => fixed
03.04.2021 06:32 greebo Fixed in Version => 2.12.0