- Authors:
- Ilya Doroshenko (xdoros01)
The project implements a heavily modified version of the 2. project variant (editor and interpreter of structured blocks), it instead implements a texture editor that is similar to texture editors in 3D modeling software.
- Qt version 6.3.0+
- cmake version 3.18+
- OpenGL version 4.2+
- Project window for choosing recent projects, creating new projects and opening existing projects
- Canvas for manipulating texture nodes
- Input nodes - emit a constant texture (like a geometric shape)
- Operation nodes - modify input textures and output modified textures
- Output nodes - can be exported as images (although any individual node can also be exported)
- Projects can be saved to .vtproj files
- Node library stored in JSON format
- The "Edit" option when right clicking on a Node does not work
- Nodes can not be renamed within the program
- Composite nodes were not implemented
- The node library can't be edited from the program itself (only in the library files)
The example folder contains following:
/examples/node_examples
- example definitions of nodes (for the node library)/examples/project_files
- example saved project file
src/TextureProcessor/include/Logic
- files adapted from the VeritasD3D library (https://github.com/Agrael1/VeritasD3D) written by Ilya Doroshenkosrc/TextureProcessor/utils/Exception.h
- file adapted from the VeritasD3D librarysrc/TextureProcessor/utils/Utils.h
- file adapted from the VeritasD3D librarysrc/TextureProcessor/utils/polymorphic_value.h
- file adapted from https://github.com/jbcoe/polymorphic_valuesrc/TextureProcessor/src/Logic/Node.cpp
- file adapted from the VeritasD3D librarysrc/TextureProcessor/src/Logic/Sink.cpp
- file adapted from the VeritasD3D librarysrc/TextureProcessor/src/Logic/Source.cpp
- file adapted from the VeritasD3D libraryDoxyfile
- generated by Doxygensrc/TextureProcessor/resources
- icons (except tlr.ico) are from https://icons8.com/