diff --git a/CHANGELOG.md b/CHANGELOG.md index d6cdd8762..32720f653 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # CHANGELOG +## [0.3.0] - 2022-07-08 + +- Add support for FP16 storage type, see `wp.float16` +- Add support for per-dimension byte strides, see `wp.array.strides` +- Add support for passing Python classes as kernel arguments, see `@wp.struct` decorator +- Add additional bounds checks for builtin matrix types +- Add additional floating point checks, see `wp.config.verify_fp` +- Add interleaved user source with generated code to aid debugging +- Add generalized GPU marching cubes implementation, see `wp.MarchingCubes` class +- Add additional scalar*matrix vector operators +- Add support for retrieving a single row from builtin types, e.g.: `r = m33[i]` +- Add `wp.log2()` and `wp.log10()` builtins +- Add support for quickly instancing `wp.sim.ModelBuilder` objects to improve env. creation performance for RL +- Remove custom CUB version and improve compatability with CUDA 11.7 +- Fix to preserve external user-gradients when calling `wp.Tape.zero()` +- Fix to only allocate gradient of a Torch tensor if `requires_grad=True` +- Fix for ray-cast precision in edge case on GPU (watertightness issue) +- Fix for kernel hot-reload when definition changes +- Fix for NVCC warnings on Linux +- Fix for generated function names when kernels are defined as class functions +- Fix for reload of generated CPU kernel code on Linux +- Fix for example scripts to ouput USD at 60 timecodes per-second (better Kit compatability) + + ## [0.2.3] - 2022-06-13 - Fix for incorrect 4d array bounds checking diff --git a/VERSION.md b/VERSION.md index 717903969..0d91a54c7 100644 --- a/VERSION.md +++ b/VERSION.md @@ -1 +1 @@ -0.2.3 +0.3.0 diff --git a/docs/_build/html/_sources/modules/functions.rst.txt b/docs/_build/html/_sources/modules/functions.rst.txt index 8234adf96..96270cae8 100644 --- a/docs/_build/html/_sources/modules/functions.rst.txt +++ b/docs/_build/html/_sources/modules/functions.rst.txt @@ -16,6 +16,7 @@ Scalar Types .. autoclass:: uint32 .. autoclass:: int64 .. autoclass:: uint64 +.. autoclass:: float16 .. autoclass:: float32 .. autoclass:: float64 Vector Types @@ -154,6 +155,16 @@ Scalar Math Return the natural log (base-e) of x, where x is positive. +.. function:: log2(x: float32) -> float + + Return the natural log (base-2) of x, where x is positive. + + +.. function:: log10(x: float32) -> float + + Return the natural log (base-10) of x, where x is positive. + + .. function:: exp(x: float32) -> float Return base-e exponential, e^x. @@ -733,6 +744,36 @@ Utility Atomically subtract ``value`` onto the array at location given by indices. +.. function:: index(a: vec2, i: int32) -> float + + +.. function:: index(a: vec3, i: int32) -> float + + +.. function:: index(a: vec4, i: int32) -> float + + +.. function:: index(a: quat, i: int32) -> float + + +.. function:: index(a: mat22, i: int32) -> vec2 + + +.. function:: index(a: mat22, i: int32, j: int32) -> float + + +.. function:: index(a: mat33, i: int32) -> vec3 + + +.. function:: index(a: mat33, i: int32, j: int32) -> float + + +.. function:: index(a: mat44, i: int32) -> vec4 + + +.. function:: index(a: mat44, i: int32, j: int32) -> float + + .. function:: expect_eq(arg1: int8, arg2: int8) -> None Prints an error to stdout if arg1 and arg2 are not equal @@ -773,6 +814,11 @@ Utility Prints an error to stdout if arg1 and arg2 are not equal +.. function:: expect_eq(arg1: float16, arg2: float16) -> None + + Prints an error to stdout if arg1 and arg2 are not equal + + .. function:: expect_eq(arg1: float32, arg2: float32) -> None Prints an error to stdout if arg1 and arg2 are not equal @@ -833,6 +879,11 @@ Utility Prints an error to stdout if arg1 and arg2 are not equal +.. function:: lerp(a: float16, b: float16, t: float32) -> float16 + + Linearly interpolate two values a and b using factor t, computed as ``a*(1-t) + b*t`` + + .. function:: lerp(a: float32, b: float32, t: float32) -> float32 Linearly interpolate two values a and b using factor t, computed as ``a*(1-t) + b*t`` @@ -1240,6 +1291,15 @@ Operators .. function:: mul(x: float32, y: quat) -> quat +.. function:: mul(x: float32, y: mat22) -> mat22 + + +.. function:: mul(x: float32, y: mat33) -> mat33 + + +.. function:: mul(x: float32, y: mat44) -> mat44 + + .. function:: mul(x: vec2, y: float32) -> vec2 diff --git a/docs/_build/html/genindex.html b/docs/_build/html/genindex.html index 4e7723421..1c0193f63 100644 --- a/docs/_build/html/genindex.html +++ b/docs/_build/html/genindex.html @@ -69,7 +69,7 @@