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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include "Headers/DXWrapper.h"

#include "GUI/Headers/GUI.h"
#include "Core/Headers/Console.h"
#include "Core/Headers/Application.h"
#include "Utility/Headers/Localization.h"
#include "Geometry/Shapes/Headers/SubMesh.h"
#include "Geometry/Shapes/Headers/Predefined/Box3D.h"
#include "Geometry/Shapes/Headers/Predefined/Sphere3D.h"
#include "Geometry/Shapes/Headers/Predefined/Quad3D.h"
#include "Geometry/Shapes/Headers/Predefined/Text3D.h"

namespace Divide {

ErrorCode DX_API::initRenderingAPI(I32 argc, char** argv) {
    Console::printfn(Locale::get(_ID("START_D3D_API")));
    fillEnumTables();
    // CEGUI::System::create(CEGUI::Direct3D10Renderer::create(
    // /*myD3D10Device*/nullptr ));
    return ErrorCode::DX_INIT_ERROR;
}

void DX_API::closeRenderingAPI() {}

void DX_API::changeResolution(U16 w, U16 h) {}

void DX_API::changeViewport(const vec4<I32>& newViewport) const {}

void DX_API::registerCommandBuffer(const ShaderBuffer& commandBuffer) const {}

bool DX_API::makeTexturesResident(const TextureDataContainer& textureData) {
    return true;
}

bool DX_API::makeTextureResident(const TextureData& textureData) {
    return true;
}

void DX_API::setCursorPosition(I32 x, I32 y) {}

void DX_API::beginFrame() {}

void DX_API::endFrame() {}

void DX_API::toggleDepthWrites(bool state) {}
void DX_API::toggleRasterization(bool state) {}

void DX_API::updateClipPlanes() {}

void DX_API::drawText(const TextLabel& textLabel, const vec2<F32>& relativeOffset) {}

void DX_API::drawPoints(U32 numPoints) {}

void DX_API::drawTriangle() {}

bool DX_API::initShaders() { return true; }

bool DX_API::deInitShaders() { return true; }

void DX_API::threadedLoadCallback() {}

void DX_API::activateStateBlock(const RenderStateBlock& newBlock,
                                const RenderStateBlock& oldBlock) const {}
};

Commits for Divide-Framework/trunk/Source Code/Platform/Video/Direct3D/DXWrapper.cpp

Diff revisions: vs.
Revision Author Commited Message
617 Diff Diff IonutCava picture IonutCava Tue 05 Jan, 2016 16:47:21 +0000

[IonutCava]
- Depth writing is now a rendering API level toggle instead of a renderstateblock option
- Z-Pre-pass fixes and improvements
- Moved normal render target to the display stage from the pre-pass stage
— Normals are only used in post-processing. This improves pre-pass performance

577 Diff Diff IonutCava picture IonutCava Fri 20 Nov, 2015 15:59:10 +0000

[IonutCava]
- Replace all string indexed maps with unsigned long long indexed maps and add both compile time and runtime hashing functions to convert strings to the proper indices
— Balancing the calls between _ID and _ID_RT can reduce map lookup overhead, especially with ParamHandler and Locale::get

565 Diff Diff IonutCava picture IonutCava Fri 13 Nov, 2015 16:39:03 +0000

[IonutCava]
- Implemented SSE functionality to the float specializations of vec4 and mat4 (some scalar operations are still used for now)
- Cleaned up some redundant static casts

543 Diff Diff IonutCava picture IonutCava Fri 30 Oct, 2015 17:18:18 +0000

[IonutCava]
- More profile guided optimizations
- Attempt to render all CSM splits in a single pass using geometry shader based instancing (unfinished)

527 Diff Diff IonutCava picture IonutCava Fri 16 Oct, 2015 16:01:06 +0000

[IonutCava]
- EXPERIMENTAL Added Compute based HiZ occlusion culling
- Some fixes to shader line counting system

514 Diff Diff IonutCava picture IonutCava Fri 25 Sep, 2015 16:18:42 +0000

[IonutCava]
- Split fullscreen quad rendering system in two and use the most performant one depending on the situation:
— The old GL_POINTS expanded in Geometry shader method. (e.g. useful for blurs / fxaa)
— Single triangle 2x width and 2xheight of the screen with scaled UVs (e.g. useful for fullscreen rendering)
- Attempt to change line rendering system to support custom start and end widths
- First attempt at splitting vertex specifications from buffers (with glVertexAttribFormat) and use only one VAO per specification instead of one per object
- Code cleanups and small optimizations where appropriate

449 Diff Diff IonutCava picture IonutCava Tue 26 May, 2015 22:42:37 +0000

[Ionut]
- More work on windowing system

446 Diff Diff IonutCava picture IonutCava Mon 25 May, 2015 19:37:45 +0000

[Ionut]
- SDL based windowing system:
— Support for Windowed/FullScreen windowed/Fullscreen mode

445 Diff Diff IonutCava picture IonutCava Fri 22 May, 2015 15:47:37 +0000

[Ionut]
- Experimental work on windowing system upgrades (to allow all 3 states: windowed / fullscreen / splash windows to exist and switch between each-other seamlessly)

443 IonutCava picture IonutCava Wed 20 May, 2015 23:46:49 +0000

[Ionut]
- Added window/fullscreen-windowed toggle option
- Modified window handling a bit