Releases: wdas/SeExpr
Include links to older documentation
Older documentation for pre-v2.0 releases at http://wdas.github.io/SeExpr/doxygen/v1/
LLVM evaluation, variable typing and variable blocks
Variable Typing
Statically typed variables and support for up to 16-dimensional vectors:
-
Floating point, FP[n], where n is 1..16:
FP[1] for scalars, eg width, height
FP[3] for 3d vectors, eg point, normal, color
FP[4] eg quaternion
FP[16] eg 4x4 matrix -
String, eg "filename.ptx"
-
None, eg statements that don't return values
-
Error
-
Lifetime modifiers of type:
- Uniform: fixed for a range of evaluations (inspired by Renderman where uniform is constant over a shading grid)
- Constant: fixed for all evaluations at all times
- Varying: can change on every evaluation point
Expression Evaluation
Faster expression evaluation using interpreter or using LLVM compiler
The default is set to LLVM evaluation. To set explicitly:
setenv SE_EXPR_EVAL LLVM
setenv SE_EXPR_EVAL INTERPRETER
While LLVM is faster to evaluate, there is more overhead during prep().
See updated tutorials at http://wdas.github.io/SeExpr/doxygen/
Variable Blocks
Shared variable blocks for evaluating multiple expressions at once.
Threading with variable blocks: each thread could have it's own variable block to operate on independently.
More details on using variable blocks is documented at http://wdas.github.io/SeExpr/doxygen/varblocks.html
Miscellaneous
New recursive descent parser, only used for the Python AST Tools.
First non-beta release
Multiple bug fixes to beta
fix build errors for boost/python and able to build w/o animlib
minor documentation fixes
build: allow gtest to be collected
build demo apps for qt5 env
fixes for build dependencies among ui, tests and demos
fixes undefined signals due to namespace typo
Function cJitter has no definition
delay dclose() of plugins until function table is cleared
remove old v1 code for plugin init
fixes SEEXPR-195: crash during code gen of Vec4d func
Makefile.config.example: update flags for Qt4 and Qt5 compatibility
qt: make the codebase Qt4 and Qt5 compatible.
build-info: add a mode for querying PyQt's sip flags
fixes SEEXPR-180 error with unsupported local functions
namespace flex/bison function to avoid clashes
rename function that resets comments so it doesn't clash w/ v1
(Internal SeExpr2 v1.11.4)
Expression Editor UI Library
Changes since v1:
Apache License
Expression Editor UI library
SeContext: optional variable context to support specific search paths
New builtin function getVar(string varName, vector defaultValue)
return varName if variable exists, otherwise return defaultValue
Fixed compile and usage problems on Mac OS X
Use cmath instead of math.h
Safety checks on exponentiation and power
Updates to documentation / doxygen cleanup
Added pre-generated flex/bison files for use with Windows 7.
remap() takes 5 doubles, not 4 doubles and an int.
Fixed artifacts with voronoi function, when jitter is high
Added mutex to parser
(Internal orignal SeExpr v2.9)
support for function stats and querying
fix rad) function documentation type
Add ability to register function stats and query them. also allow querying sizes.
remove commented bison/flex stuff
fixes SEEXPR-166: crashes occurring when editing numeric vector values
fix duplicate header includes between seexpr and seexpr2
(Internal original SeExpr v2.11)
Initial release of basic expression library
rel-1.0.1 Revision