render: Removed common_tess and moved tessellator to render

This commit is contained in:
Nathan Adams 2022-08-14 01:27:27 +02:00 committed by Mike Welsh
parent e1f38b26c0
commit c4488fc883
10 changed files with 19 additions and 38 deletions

13
Cargo.lock generated
View File

@ -3105,6 +3105,7 @@ dependencies = [
"gif",
"jpeg-decoder",
"log",
"lyon",
"png",
"smallvec",
"swf",
@ -3124,16 +3125,6 @@ dependencies = [
"web-sys",
]
[[package]]
name = "ruffle_render_common_tess"
version = "0.1.0"
dependencies = [
"log",
"lyon",
"ruffle_render",
"swf",
]
[[package]]
name = "ruffle_render_webgl"
version = "0.1.0"
@ -3143,7 +3134,6 @@ dependencies = [
"js-sys",
"log",
"ruffle_render",
"ruffle_render_common_tess",
"ruffle_web_common",
"swf",
"wasm-bindgen",
@ -3163,7 +3153,6 @@ dependencies = [
"log",
"raw-window-handle 0.4.3",
"ruffle_render",
"ruffle_render_common_tess",
"swf",
"web-sys",
"wgpu",

View File

@ -14,7 +14,6 @@ members = [
"render",
"render/canvas",
"render/wgpu",
"render/common_tess",
"render/webgl",
"tests",

View File

@ -14,6 +14,7 @@ png = { version = "0.17.5" }
flate2 = "1.0.24"
smallvec = { version = "1.9.0", features = ["union"] }
downcast-rs = "1.2.0"
lyon = { version = "1.0.0", optional = true }
[dependencies.jpeg-decoder]
version = "0.2.6"
@ -22,3 +23,6 @@ default-features = false # can't use rayon on web
[dev-dependencies]
approx = "0.5.1"
[features]
default = []
tessellator = ["lyon"]

View File

@ -1,12 +0,0 @@
[package]
name = "ruffle_render_common_tess"
version = "0.1.0"
authors = ["Ruffle LLC <ruffle@ruffle.rs>"]
edition = "2021"
license = "MIT OR Apache-2.0"
[dependencies]
log = "0.4"
lyon = "1.0.0"
ruffle_render = { path = ".." }
swf = { path = "../../swf" }

View File

@ -7,3 +7,6 @@ pub mod matrix;
pub mod shape_utils;
pub mod transform;
pub mod utils;
#[cfg(feature = "tessellator")]
pub mod tessellator;

View File

@ -1,3 +1,5 @@
use crate::bitmap::{BitmapHandle, BitmapSource};
use crate::shape_utils::{DistilledShape, DrawCommand, DrawPath};
use lyon::path::Path;
use lyon::tessellation::{
self,
@ -5,8 +7,6 @@ use lyon::tessellation::{
FillTessellator, FillVertex, StrokeTessellator, StrokeVertex, StrokeVertexConstructor,
};
use lyon::tessellation::{FillOptions, StrokeOptions};
use ruffle_render::bitmap::{BitmapHandle, BitmapSource};
use ruffle_render::shape_utils::{DistilledShape, DrawCommand, DrawPath};
pub struct ShapeTessellator {
fill_tess: FillTessellator,
@ -270,7 +270,7 @@ pub struct Bitmap {
}
#[allow(clippy::many_single_char_names)]
fn swf_to_gl_matrix(m: ruffle_render::matrix::Matrix) -> [[f32; 3]; 3] {
fn swf_to_gl_matrix(m: crate::matrix::Matrix) -> [[f32; 3]; 3] {
let tx = m.tx.get() as f32;
let ty = m.ty.get() as f32;
let det = m.a * m.d - m.c * m.b;
@ -295,7 +295,7 @@ fn swf_to_gl_matrix(m: ruffle_render::matrix::Matrix) -> [[f32; 3]; 3] {
#[allow(clippy::many_single_char_names)]
fn swf_bitmap_to_gl_matrix(
m: ruffle_render::matrix::Matrix,
m: crate::matrix::Matrix,
bitmap_width: u32,
bitmap_height: u32,
) -> [[f32; 3]; 3] {

View File

@ -8,9 +8,8 @@ license = "MIT OR Apache-2.0"
[dependencies]
js-sys = "0.3.59"
log = "0.4"
ruffle_render_common_tess = { path = "../common_tess" }
ruffle_web_common = { path = "../../web/common" }
ruffle_render = { path = ".." }
ruffle_render = { path = "..", features = ["tessellator"] }
wasm-bindgen = "=0.2.82"
bytemuck = { version = "1.10.0", features = ["derive"] }
fnv = "1.0.7"

View File

@ -4,10 +4,10 @@ use ruffle_render::backend::null::NullBitmapSource;
use ruffle_render::backend::{RenderBackend, ShapeHandle};
use ruffle_render::bitmap::{Bitmap, BitmapFormat, BitmapHandle, BitmapSource};
use ruffle_render::shape_utils::DistilledShape;
use ruffle_render::transform::Transform;
use ruffle_render_common_tess::{
use ruffle_render::tessellator::{
Gradient as TessGradient, GradientType, ShapeTessellator, Vertex as TessVertex,
};
use ruffle_render::transform::Transform;
use ruffle_web_common::JsResult;
use swf::Color;
use wasm_bindgen::{JsCast, JsValue};
@ -493,7 +493,7 @@ impl WebGlRenderBackend {
shape: DistilledShape,
bitmap_source: &dyn BitmapSource,
) -> Mesh {
use ruffle_render_common_tess::DrawType as TessDrawType;
use ruffle_render::tessellator::DrawType as TessDrawType;
let lyon_mesh = self
.shape_tessellator

View File

@ -8,8 +8,7 @@ license = "MIT OR Apache-2.0"
[dependencies]
wgpu = "0.13.0"
log = "0.4"
ruffle_render_common_tess = { path = "../common_tess" }
ruffle_render = { path = ".." }
ruffle_render = { path = "..", features = ["tessellator"] }
bytemuck = { version = "1.10.0", features = ["derive"] }
raw-window-handle = "0.4"
clap = { version = "3.2.16", features = ["derive"], optional = true }

View File

@ -11,11 +11,11 @@ use ruffle_render::backend::{RenderBackend, ShapeHandle};
use ruffle_render::bitmap::{Bitmap, BitmapHandle, BitmapSource};
use ruffle_render::color_transform::ColorTransform;
use ruffle_render::shape_utils::DistilledShape;
use ruffle_render::transform::Transform;
use ruffle_render_common_tess::{
use ruffle_render::tessellator::{
DrawType as TessDrawType, Gradient as TessGradient, GradientType, ShapeTessellator,
Vertex as TessVertex,
};
use ruffle_render::transform::Transform;
use std::num::NonZeroU32;
use std::path::Path;
use std::sync::Arc;