awsm_web 0.19.2

Wrappers for WASM
Documentation
[package]
name = "awsm_web"
edition = "2018"
version = "0.19.2"
authors = ["David Komer <david.komer@gmail.com>"]
license = "MIT OR Apache-2.0"
readme = "../README.md"
repository = "https://github.com/dakom/awsm-web"
description = "Wrappers for WASM"
categories = ["wasm"]
keywords = ["webgl", "renderer", "3d", "graphics", "gamedev"]


[lib]
crate-type = ["cdylib", "rlib"]


[profile.release]
lto = true
opt-level = 's'


[features]
all = ["data", "dom", "audio", "image", "video", "canvas", "input", "loaders", "tick", "window", "workers", "webgl", "serde_iso"]
default = []
data = []
dom= [

    "web-sys/HtmlElement",

    "web-sys/Element",

    "web-sys/DocumentFragment",

    "web-sys/HtmlCollection",

    "web-sys/Document",

    "web-sys/DomTokenList",

    "web-sys/NodeList",

    "web-sys/CssStyleDeclaration",

    "web-sys/DomRect",

]


audio = [

    # audio

    "web-sys/AudioContext",

    "web-sys/AudioBuffer",

    "web-sys/AudioNode",

    "web-sys/AudioContextOptions",

    "web-sys/AudioBufferSourceNode",

    "web-sys/AudioBufferSourceOptions",

    "web-sys/AudioDestinationNode",

    "web-sys/AudioBufferOptions",

    "web-sys/MediaElementAudioSourceNode",

    "web-sys/HtmlMediaElement",

    "web-sys/HtmlAudioElement",

    "web-sys/AudioParam",
    "web-sys/GainNode",
    'web-sys/Event',

    "beach_map",

]
image = [

    'web-sys/HtmlImageElement',

    'web-sys/ImageBitmap',

    'web-sys/ImageData',

]
video = [

    'web-sys/HtmlVideoElement',

]
canvas = [

    # canvas

    'web-sys/CanvasRenderingContext2d',

    'web-sys/HtmlCanvasElement',

]
input = [

    'web-sys/MouseEvent',

    'web-sys/Event',

    'web-sys/Element',

    'web-sys/Document',

    'web-sys/EventTarget',

]
loaders = [

    "data",

    "window",

    "web-sys/Request",

    "web-sys/RequestInit",

    "web-sys/Response",

    "web-sys/ResponseInit",

    'web-sys/Location',

    'web-sys/HtmlElement',

    'web-sys/Url',

    'web-sys/Blob',

    'web-sys/BlobPropertyBag',

    'web-sys/AbortController',

    'web-sys/AbortSignal',

    'web-sys/Headers',

    'web-sys/RequestCredentials',

    'web-sys/File',



    "futures",

    "wasm-bindgen-futures",

    "gloo-timers",

    "discard",



]


serde_iso = [

    "serde",

    "serde_json",

    "serde-wasm-bindgen",

]


tick = [

    "window",

    "workers"

]


workers = [

    "web-sys/WorkerGlobalScope"

]


window= [

    "web-sys/Window",

]


webgl = [

    "canvas", 

    "image",

    "video",

    "data",



    # core webgl

    'web-sys/WebGlRenderingContext', 

    'web-sys/WebGl2RenderingContext',

    'web-sys/WebGlUniformLocation',

    'web-sys/WebGlBuffer',

    'web-sys/WebGlProgram',

    'web-sys/WebGlShader',

    'web-sys/WebGlTexture',

    'web-sys/WebGlVertexArrayObject',

    'web-sys/WebGlActiveInfo',

    'web-sys/WebGlRenderbuffer',

    'web-sys/WebglDrawBuffers',

    'web-sys/WebGlFramebuffer',

    'web-sys/WebGlRenderbuffer',



    # webgl extensions

    'web-sys/OesVertexArrayObject', 

    'web-sys/AngleInstancedArrays',

    'web-sys/WebglDrawBuffers',



    # dependencies

    "serde",

    "serde-wasm-bindgen",

    "beach_map",

    "rustc-hash",

]


# more verbose logging
debug_log = []


# skip some webgl cache checks and things. not reliable, just used for debugging
disable_webgl_opt = []


[dependencies]
web-sys = "0.3.51"
js-sys = "0.3.51"
wasm-bindgen = "0.2.74"
log = "0.4.14"
rustc-hash = { version = "1.1.0", optional = true }
serde = { version = "1.0.126", features = ["derive"], optional = true }
serde_json = { version = "1.0.64", optional = true }
beach_map = { version = "0.2.1", optional = true }
wasm-bindgen-futures= { version = "0.4.24", optional = true }
serde-wasm-bindgen = { version = "0.3.0", optional = true }
futures = { version = "0.3.15", optional = true }
gloo-timers = { version = "0.2.1", features = ["futures"], optional = true }
discard = { version = "1.0.4", optional = true }




[package.metadata.docs.rs]
all-features = true