diff options
| author | donkopunchstania <donkopunchstania@gmail.com> | 2010-03-09 04:38:07 +0000 |
|---|---|---|
| committer | donkopunchstania <donkopunchstania@gmail.com> | 2010-03-09 04:38:07 +0000 |
| commit | cc7c6cd35f0cccb19a4e3681259b55cebeeb80ba (patch) | |
| tree | b32a1c18ff547148bac6ef4548158abeee1277bb /Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp | |
| parent | 5beb6dfd4718c5580d4b90edf38ef7bd6882e0f4 (diff) | |
Texture coordinates are stored in fixed point format in TEV which allows overflows to be emulated correctly. Added logic to calculated texture LOD and use the correct mip. Dumping textures will now dump all mip levels. Added line rendering. Changed data stored in vertex from float arrays to vectors for cleaner math.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5178 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp')
| -rw-r--r-- | Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp b/Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp index de28989972..6bc92dc071 100644 --- a/Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp +++ b/Source/Plugins/Plugin_VideoSoftware/Src/SetupUnit.cpp @@ -134,10 +134,38 @@ void SetupUnit::SetupTriFan() }
void SetupUnit::SetupLine()
-{}
+{
+ if (m_VertexCounter < 1)
+ {
+ m_VertexCounter++;
+ m_VertWritePointer = m_VertPointer[m_VertexCounter];
+ return;
+ }
+
+ Clipper::ProcessLine(m_VertPointer[0], m_VertPointer[1]);
+
+ m_VertexCounter = 0;
+ m_VertWritePointer = m_VertPointer[0];
+}
void SetupUnit::SetupLineStrip()
-{}
+{
+ if (m_VertexCounter < 1)
+ {
+ m_VertexCounter++;
+ m_VertWritePointer = m_VertPointer[m_VertexCounter];
+ return;
+ }
+
+ m_VertexCounter++;
+
+ Clipper::ProcessLine(m_VertPointer[0], m_VertPointer[1]);
+
+ m_VertWritePointer = m_VertPointer[0];
+
+ m_VertPointer[0] = m_VertPointer[1];
+ m_VertPointer[1] = &m_Vertices[m_VertexCounter & 1];
+}
void SetupUnit::SetupPoint()
{}
|
