Both Jolt and Rapier:
- Support single and double precision simulation
Only Jolt:
- Supports soft-body physics
- Supports multiple object layers
- Supports multiple broad phase layers
| {"crate_name":"wgpu_core","trait_name":"hub::GlobalIdentityHandlerFactory","entries":"36","entries_ignoring_upcasting":"20","entries_for_upcasting":"16","upcasting_cost_percent":"80"} | |
| {"crate_name":"num_traits","trait_name":"RefNum","entries":"23","entries_ignoring_upcasting":"13","entries_for_upcasting":"10","upcasting_cost_percent":"76.92307692307693"} | |
| {"crate_name":"wgpu","trait_name":"context::ContextData","entries":"6","entries_ignoring_upcasting":"4","entries_for_upcasting":"2","upcasting_cost_percent":"50"} | |
| {"crate_name":"num_traits","trait_name":"NumOps","entries":"12","entries_ignoring_upcasting":"8","entries_for_upcasting":"4","upcasting_cost_percent":"50"} | |
| {"crate_name":"num_traits","trait_name":"NumAssignOps","entries":"12","entries_ignoring_upcasting":"8","entries_for_upcasting":"4","upcasting_cost_percent":"50"} | |
| {"crate_name":"clap_builder","trait_name":"builder::ext::Extension","entries":"10","entries_ignoring_upcasting":"8","entries_for_upcasting":"2","upcasting_cost_percent":"25"} | |
| {"crate_nam |
| // uuid: 0.7.4 with "v4" feature enabled | |
| // Valid UTF-8: 6868 / 100000000 | |
| // Valid %: 0.006868 | |
| // | |
| // Sample strings: | |
| // | |
| // "2U6!>:N۸\u{1e}cUV3m%" | |
| // "ɷ1e\r}AـΕ+3Wĭ" | |
| // "aTA ?\u{17}KǺ\u{1f}\u{7}\u{19}\u{2}\u{c}\u{7}?" |
| local function compareList(list, len) | |
| -- We use varargs here since spare arrays make Lua upset | |
| return function(...) | |
| len = len or select("#", ...) | |
| local hasDifference = false | |
| local differentIndexes = {} | |
| for i = 1, len do | |
| if list[i] ~= select(i, ...) then |
| local Roact = require(script.Parent.Parent.Roact) | |
| local WindowedView = Roact.PureComponent:extend("WindowedView") | |
| function WindowedView:init() | |
| self.state = { | |
| viewStart = 1, | |
| viewSize = 1, | |
| paddingStart = 0, | |
| } |
| local function applySelector(selector, ...) | |
| if typeof(selector) == "string" then | |
| return (...)[selector] | |
| else | |
| return selector(...) | |
| end | |
| end | |
| local function listShallowEqual(a, b, len) | |
| for i = 1, len do |
| set smoothscroll | |
| unmap d u | |
| let blacklists = ["*://mail.google.com/*", "*://play.google.com/*", "*://*.slack.com/*", "*://discordapp.com/*"] |
| extern crate winit; | |
| fn main() { | |
| let events_loop = winit::EventsLoop::new(); | |
| let window = winit::WindowBuilder::new() | |
| .with_dimensions(200, 200) | |
| .with_max_dimensions(200, 200) | |
| .build(&events_loop) | |
| .unwrap(); |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title></title> | |
| <style> | |
| #output { | |
| font-size: 3rem; | |
| margin: 0; | |
| padding: 0.5rem; | |
| line-height: 1.2; |
| 👩🏽🚒👩🏻👦🏻👶🏻👩🏻🍳👩🏼👧🏾👶🏾👩🏽🚀👨🏽👦🏽👦🏼👨🏾🏫👨🏼👶🏾👧🏽👨🏽✈️👨🏾👦🏾👦🏼👨🏼🚒👩🏼👧🏼👧🏾👨🏾🎨👨🏼👦🏾👧🏻👨🏾✈️👨🏾👶🏼👦🏼👨🏼🎨👩🏿👧🏾👧🏽👩🏿💻👨🏽👦🏽👧🏼👩🏿✈️👨🏾👧🏿👧🏻👩🏾🎨👨🏼👦🏼👧🏻👩🏻🌾👨🏽👧🏾👧🏾👩🏼⚕️👨🏽👧🏾👧🏼👨🏾🚒👨🏿👶🏽👧🏽👨🏻💻👨🏽👧🏾👶🏾👨🏽🚀👩🏽👧🏼👧🏽👨🏽🏭👩🏽👶🏼👦🏾👨🏼🚒👩🏽👶🏾👦🏻👨🏼✈️👨🏾👧🏽👧🏼👨🏼🏫👩🏾👧🏻👦🏾👨🏽🍳👩🏿👶🏾👦🏻👨🏻✈️👩🏼👶🏼👶🏻👩🏻✈️👨🏿👧🏻👧🏼👨🏾🎨👩🏼👶🏽👶🏽👩🏼🚀👩🏾👦🏼👧🏽👨🏽💻👩🏼👧🏼👦🏾👨🏾🎤👩🏾👧🏽👦🏾👨🏻🎨👨🏼👶🏼👧🏽👩🏼🎤👨🏻👧🏼👧🏾👩🏼🎓👨🏼👧🏼👧🏾👨🏾🚒👨🏾👧🏾👶🏿👨🏾💼👨🏾👧🏾👦🏾👩🏽🚒👩🏼👶🏿👧🏾👨🏿🍳👩🏽👧🏽👧🏾👩🏾🚀👩🏼👧🏾👧🏿👩🏿🍳👩🏽👧🏽👧🏼👨🏽🏭👨🏿👧🏾👧🏽👨🏽🍳👩🏼👦🏻👶🏻👨🏽🏫👩🏻👧🏼👧🏼👨🏻🔬👨🏿👧🏿👶🏾👩🏾🏫👨🏽👧🏼👧🏼👨🏼🎤👨🏽👦🏻👧🏼👨🏽🍳👩🏻👧🏾👧🏾👩🏻🔬👩🏾👧🏻👶🏼👨🏽🎨👩🏻👦🏽👶🏾👩🏻💼👨🏼👧🏽👶🏽👩🏾🎤👨🏽👶🏻👧🏾👩🏽🔬👩🏾👦🏽👧🏻👨🏿🎨👨🏼👧🏾👧🏼👩🏼🚒👩🏼👦🏾👧🏽👨🏽✈️👨🏿👧🏾👧🏿👨🏾🏭👩🏼👶🏾👶🏽👨🏽🎤👩🏼👶🏾👶🏽👨🏽🚀👨🏼👧🏿👶🏾👨🏾🏫👨🏼👶🏼👶🏼👨🏻🏭👩🏿👧🏼👧🏿👩🏽🎨👨🏽👶🏾👧🏾👨🏻🚀👨🏼👦🏾👶🏿👩🏽✈️👨🏾👦🏿👧🏾👨🏼💻👩🏽👧🏻👶🏼👨🏿🏭👨🏽👧🏾👧🏼👨🏻✈️👩🏾👦🏾👶🏽👩🏼🔬👩🏽👶🏾👶🏾👨🏽🏭👩🏾👶🏿👦🏾👨🏽🎤👩🏽👦🏼👶🏾👩🏾🍳👩🏽👦🏼👶🏾👩🏽🏫👩🏽👶🏾👧🏽👩🏽🎨👨🏾👧🏻👦🏽👨🏾🔬👨🏿👦🏼👧🏿👩🏽🌾👩🏼👶🏼👧🏽👨🏿🎓👩🏼👶🏽👶🏿👩🏿🚀👩 |