Commit ed113306c5d1990bef6f50bcb76e3232e68ff00e

Authored by Georg Hopp
1 parent e1645bdb

Make readme reflect current project.

Showing 1 changed file with 7 additions and 98 deletions
1 -<div align="center"> 1 +# Easel3D
2 2
3 - <h1><code>wasm-pack-template</code></h1>  
4 -  
5 - <strong>A template for kick starting a Rust and WebAssembly project using <a href="https://github.com/rustwasm/wasm-pack">wasm-pack</a>.</strong>  
6 -  
7 - <p>  
8 - <a href="https://travis-ci.org/rustwasm/wasm-pack-template"><img src="https://img.shields.io/travis/rustwasm/wasm-pack-template.svg?style=flat-square" alt="Build Status" /></a>  
9 - </p>  
10 -  
11 - <h3>  
12 - <a href="https://rustwasm.github.io/docs/wasm-pack/tutorials/npm-browser-packages/index.html">Tutorial</a>  
13 - <span> | </span>  
14 - <a href="https://discordapp.com/channels/442252698964721669/443151097398296587">Chat</a>  
15 - </h3>  
16 -  
17 - <sub>Built with 🦀🕸 by <a href="https://rustwasm.github.io/">The Rust and WebAssembly Working Group</a></sub>  
18 -</div>  
19 -  
20 -## About  
21 -  
22 -[**📚 Read this template tutorial! 📚**][template-docs]  
23 -  
24 -This template is designed for compiling Rust libraries into WebAssembly and  
25 -publishing the resulting package to NPM.  
26 -  
27 -Be sure to check out [other `wasm-pack` tutorials online][tutorials] for other  
28 -templates and usages of `wasm-pack`.  
29 -  
30 -[tutorials]: https://rustwasm.github.io/docs/wasm-pack/tutorials/index.html  
31 -[template-docs]: https://rustwasm.github.io/docs/wasm-pack/tutorials/npm-browser-packages/index.html  
32 -  
33 -## 🚴 Usage  
34 -  
35 -### 🐑 Use `cargo generate` to Clone this Template  
36 -  
37 -[Learn more about `cargo generate` here.](https://github.com/ashleygwilliams/cargo-generate)  
38 -  
39 -```  
40 -cargo generate --git https://github.com/rustwasm/wasm-pack-template.git --name my-project  
41 -cd my-project  
42 -```  
43 -  
44 -### 🛠️ Build with `wasm-pack build`  
45 -  
46 -```  
47 -wasm-pack build  
48 -```  
49 -  
50 -### 🔬 Test in Headless Browsers with `wasm-pack test`  
51 -  
52 -```  
53 -wasm-pack test --headless --firefox  
54 -```  
55 -  
56 -### 🎁 Publish to NPM with `wasm-pack publish`  
57 -  
58 -```  
59 -wasm-pack publish  
60 -```  
61 -  
62 -## 🔋 Batteries Included  
63 -  
64 -* [`wasm-bindgen`](https://github.com/rustwasm/wasm-bindgen) for communicating  
65 - between WebAssembly and JavaScript.  
66 -* [`console_error_panic_hook`](https://github.com/rustwasm/console_error_panic_hook)  
67 - for logging panic messages to the developer console.  
68 -* [`wee_alloc`](https://github.com/rustwasm/wee_alloc), an allocator optimized  
69 - for small code size.  
70 -# Rust playground  
71 -  
72 -Things I have recently done while learning the Rust programming language. 3 +A rust library for manipulating and display of 3D objects on a canvas.
73 4
74 ## Synopsis 5 ## Synopsis
75 6
76 -Change in one of the toplevel subdirectories and try `cargo build` or  
77 -`cargo run`. Maybe not everything is working oob. Feel free to fix whatever  
78 -you want. 7 +`cargo build`
79 8
80 ## Description 9 ## Description
81 10
82 -Various small examples I have tried while learning rust. The biggest and  
83 -currently most active project is **fractional** which started as an  
84 -implamentation of a rational number data type and then switched to a 3D  
85 -math playground visualizing using **XCB** (in future it might also use  
86 -a **HTML5 Canvas** for drawing as WebAssembly application.  
87 -Using fractions with 3D math has several drawbacks:  
88 -  
89 -1. A huge part of 3D math is non rational, like sin, cos, tan and sqrt.  
90 -2. The numerator and denominator tend to become very huge while nearing to non  
91 - rational numbers and reduction is difficult and time consuming.  
92 -3. Because of 2 it is way slower than the floating point calculation (at least  
93 - with a decent coprocessor).  
94 -  
95 -Anyway, implementing the vector math stuff for both fractions and floating  
96 -point was a nice playground for generics and traits. In future I might add  
97 -another data type which implements the math as done by David Braben for the  
98 -elite computer game. 11 +A 3D math playground visualizing on a canvas trait which the user needs to
  12 +implement e.g. using **XCB** or a **HTML5 Canvas** for drawing as WebAssembly
  13 +application. (Both exists in separate projects.)
99 14
100 ## Requirements 15 ## Requirements
101 16
102 -### Always  
103 -  
104 - A recent version of the Rust programming language as well as tooling. 17 - A recent version of the Rust programming language as well as tooling.
105 Currently I use Rust 1.39.0. 18 Currently I use Rust 1.39.0.
106 19
107 -### For fractional  
108 -  
109 -- A running X Server with **XCB** and **X11-SHM** extentions  
110 -  
111 ## Dependencies 20 ## Dependencies
112 21
113 -... 22 +- lazy_static v1.4.0
114 23
115 ## Contributing 24 ## Contributing
116 25
Please register or login to post a comment