@@ -5,15 +5,25 @@ Dependency and standards changes:
55* ** OpenImageIO 1.8+** : This release of OSL should build properly against
66 OIIO 1.8 or newer. Support has been dropped for OIIO 1.7.
77
8+ New tools:
9+ * ** osltoy** : GUI tool for interactive shader editing and pattern
10+ visualization (somewhat in the style of [ Shadertoy] ( http://shadertoy.com ) .
11+ #827 (1.10.0)
12+
813Language features:
914
1015Standard library additions/changes:
1116
1217Contributed shader library changes:
18+ * mandelbrot.osl: computes Mandelbrot and Julia images. #827 (1.10.0)
1319
1420API changes, new options, new ShadingSystem features (for renderer writers):
1521* ShadingSystem API changes:
1622* ShadingSystem attribute additions/changes:
23+ * New "allow_shader_replacement" (int) attribute, when nonzero, allows
24+ shaders to be specified more than once, replacing their former
25+ definitions. The default, 0, considers that an error, as it always
26+ has. #816 (1.10.0).
1727* Shader group attribute additions/changes:
1828* RendererServices:
1929
@@ -26,17 +36,17 @@ Build & test system improvements:
2636Developer goodies:
2737
2838Documentation:
39+ * ` osltoy ` documentations in ` doc/osltoy.md.html ` (1.10.0).
2940
3041
31-
32- Release 1.9 -- ?? 2017 (compared to 1.8)
42+ Release 1.9 -- 4 December 2017 (compared to 1.8)
3343--------------------------------------------------
3444
3545Dependency and standards changes:
3646* ** C++11 required** : OSL 1.9 requires a minimum standard of C++11. It
3747 should also build against C++14 and C++17.
38- * ** LLVM 3.5 / 3.9 / 4.0 / 5.0** : Support has been added for LLVM 3.9, 4.0, and
39- 5.0. Support has been removed for for LLVM 3.4.
48+ * ** LLVM 3.5 / 3.9 / 4.0 / 5.0** : Support has been added for LLVM 3.9, 4.0,
49+ and 5.0. Support has been removed for for LLVM 3.4.
4050* ** OpenImageIO 1.7+** : This release of OSL should build properly against
4151 OIIO 1.7 or newer. You may find that 1.6 is still ok, but we are not doing
4252 any work to ensure that.
@@ -49,10 +59,10 @@ Language features:
4959 OSL_VERSION_PATCH, and OSL_VERSION (e.g. 10900 for 1.9.0) reveal the
5060 OSL release at shader compile time. #747 (1.9.0)
5161* Structure constructors: If you have a struct ` S ` comprising fields with
52- types T1, T2, ..., you may now have an expression ` S(T1 v2,T2 v2,...) ` that
53- constructs and returns an ` S ` with those field values, much in the same
54- way that you can say ` color(a,b,c) ` to construct a color out of components
55- a, b, c. #751 (1.9.0)
62+ types T1, T2, ..., you may now have an expression ` S(T1 v2, T2 v2,...) `
63+ that constructs and returns an ` S ` with those field values, much in the
64+ same way that you can say ` color(a,b,c) ` to construct a color out of
65+ components a, b, c. #751 (1.9.0)
5666* User-defined operator overloading: If you make a new (struct) type, it
5767 is possible to define overloaded operators, like this:
5868
@@ -130,8 +140,8 @@ API changes, new options, new ShadingSystem features (for renderer writers):
130140 parameters expecting a float-aggregate or array thereof, and an ` int `
131141 may be passed to a parameter expecting a ` float ` , and an ` int[1] ` may
132142 be passed to an ` int ` parameter. #794 ,#797 (1.9.1)
133- * Shader group attribute additions/changes:
134- * RendererServices:
143+ * Fixed ` ClosureComponent ` to work with SSE alignment requirements. # 810
144+ (1.9.3)
135145
136146Performance improvements:
137147* Shader JIT time is improved by about 10% as a result of pre-declaring
@@ -194,6 +204,15 @@ Bug fixes and other improvements (internals):
194204 the ` '.' ` (dot) character as decimal separator in floating point number,
195205 even when running on a computer system configured to use a foreign locale
196206 where the comma is traditionally used as the decimal separator. #795 (1.9.1)
207+ * Fix param analysis bug for texture or pointcloud functions with optional
208+ token/value parameters where the token name wasn't a string literal -- it
209+ could fail to recognize that certain parameters would be written to by the
210+ call. #812 (1.9.3)
211+ * ShadingSystem statistics are now printed if any shaders were
212+ declared/loaded, even if no shaders were executed. #815 (1.9.3)
213+ * Minor OSLQuery implementation improvements: add move/copy constructors
214+ for OSLQuery::Parameter, make the ShadingSystem side of OSLQuery correctly
215+ report default parameter values. #821 (1.9.4)
197216
198217Build & test system improvements:
199218* C++11 is the new language baseline. #704 , #707
@@ -251,6 +270,11 @@ Build & test system improvements:
251270 #788 (1.9.1)
252271* Improved proper rebuilding of the LLVM bitcode for llvm_ops.cpp when only
253272 certain headers change. #802 (1.9.1)
273+ * Fix gcc7 warnings about signed vs unsigned compares. #807 (1.9.2)
274+ * Simplify the build logic for finding PugiXML and prefer a system install
275+ when found, rather than looking to OIIO to supply it. #809 (1.9.2)
276+ * MSVS 2015 x64 compilation fixes. #820 (1.9.4)
277+ * Fix debug compile against OIIO 1.7. #822 (1.9.4)
254278
255279Developer goodies:
256280* The ` dual.h ` implementation has been completely overhauled. The primary
@@ -268,6 +292,8 @@ Documentation:
268292* Full testshade docs in ` doc/testshade.md.html ` (1.9.0)
269293
270294
295+
296+
271297Release 1.8.12 -- 1 Nov 2017 (compared to 1.8.11)
272298--------------------------------------------------
273299* Improve type checking error messages with structs. #761
@@ -437,10 +463,6 @@ API changes, new options, new ShadingSystem features (for renderer writers):
437463 * Attribute "llvm_debug_ops" adds a printf before running each op.
438464 This is mostly for debugging OSL itself, not for users. (1.8.3)
439465
440- <!-- * Shader group attribute additions/changes:
441- * RendererServices:
442- -->
443-
444466Performance improvements:
445467* New runtime optimization: better at understanding the initial values of
446468 output parameters and what optimizations can be done based on that. #657
0 commit comments