Subversion Repository Public Repository

Divide-Framework

This repository has no backups
This repository's network speed is throttled to 100KB/sec

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "Headers/ShaderProgramInfo.h"

namespace Divide {

ShaderProgramInfo::ShaderProgramInfo()
    : _customShader(false),
      _shaderRef(nullptr),
      _shaderCompStage(BuildStage::COUNT)
{
}

ShaderProgramInfo::ShaderProgramInfo(const ShaderProgramInfo& other)
  : _customShader(other._customShader),
    _shaderRef(other._shaderRef),
    _shader(other._shader),
    _shaderDefines(other._shaderDefines)
{
    _shaderCompStage.store(other._shaderCompStage);
}

ShaderProgramInfo& ShaderProgramInfo::operator=(const ShaderProgramInfo& other) {
    _customShader = other._customShader;
    _shaderRef = other._shaderRef;
    _shader = other._shader;
    _shaderCompStage.store(other._shaderCompStage);
    _shaderDefines = other._shaderDefines;
    return *this;
}

const ShaderProgram_ptr& ShaderProgramInfo::getProgram() const {
    return _shaderRef == nullptr ? ShaderProgram::defaultShader()
                                 : _shaderRef;
}

ShaderProgramInfo::BuildStage ShaderProgramInfo::computeStage() const {
    return _shaderCompStage;
}

void ShaderProgramInfo::computeStage(BuildStage stage) {
    _shaderCompStage = stage;
}

}; //namespace Divide

Commits for Divide-Framework/trunk/Source Code/Geometry/Material/ShaderProgramInfo.cpp

Diff revisions: vs.
Revision Author Commited Message
781 Diff Diff IonutCava picture IonutCava Wed 12 Oct, 2016 16:03:46 +0000

[IonutCava]
- ShaderComputeQueue <-> Material shader request bug fix (element stuck in QUEUED state)
- More Camera class cleanups
- Add a method of removing EnvironmentProbes from their Pool

758 Diff Diff IonutCava picture IonutCava Tue 02 Aug, 2016 16:05:09 +0000

[IonutCava]
- Added a cross platform method of naming threads (helps with debugging)
- Reduced dependency on VAR.dvd_drawID in shaders.
- Work on Single/Multi thread toggle for GFX resource loading (crashes, bugs, etc)
- Fix a bug in TaskPool where task states were never actually updated properly
- Change threadpool implementation to use std::thread instead of boost::thread

756 IonutCava picture IonutCava Fri 29 Jul, 2016 16:09:29 +0000

[IonutCava]
- Cleaned up material shader:
— Add explicit functions for material colour properties
— Separate Phong from PBR
— Remove texture count variable and use TEX_OPERATION_NONE for single texture
- Added a Shader compute queue that all materials share. This allows better frame time allocation for shader compilation
- Attempt to fix Task and TaskPool race conditions