Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More bug fixes #2

Closed
wants to merge 29 commits into from
Closed

More bug fixes #2

wants to merge 29 commits into from

Conversation

ghost
Copy link

@ghost ghost commented May 13, 2011

slmeta file names no longer tied to a specific render tool set.
Render pass resolution can now be exported for non beauty passes.
Now using [ ] brackets around array values in RIB.

the slmeta files should only have extension .slmeta and not .slx.slmeta
if compiled by aqsl.  This is so that generic pipline shader libraries can be
built and not be tied to a specific pipeline core ie Aqsis.

The Fix: Was just a matter of modifying the pipeline xml that uses a link
expression that replaces the compiler specific file extension with .slmeta.

This fixes #20 issue on GitHub: https://github.com/nfz/RIBMosaic-exp/issues/20
non BEAUTY passes can have a different resolution than the scene.

This fixes #23 issue on GitHub repo: https://github.com/nfz/RIBMosaic-exp/issues/23
Arrays will now have [ at the start of the values and ] at the end in the RIB.
Pixie and 3Delight don't seem to mind the missing brackets but Aqsis 1.7 complains.
Arrays will now have [ at the start of the values and ] at the end in the RIB.
Pixie and 3Delight don't seem to mind the missing brackets but Aqsis 1.7 complains.

This fixes #24 issue on GitHub repo: https://github.com/nfz/RIBMosaic-exp/issues/24
Split up export_shaders() monolithic method into smaller methods for easier
maintenance and re-use.

Now have export_text_editor_shaders(), export_xml_shaders(),
build_shader_compiler_commands(), build_shader_info_commands(),
and make_shader_export_path().

Also fixed #25 issue on GitHub repo: https://github.com/nfz/RIBMosaic-exp/issues/25
A new blender operator WM_OT_ribmosaic_text_addshaderpanel() has been
added that allows the user to add shaders that are in the text editor to
the active pipeline by right mouse button click on the shader text and
selecting "Add Shader Panels" from the popup menu.

The operator will automatically compile and build the required slmeta
file for the shader and then attempt to build a shader panel in the active
pipeline.

this fixes #22 issue on GitHub repo: https://github.com/nfz/RIBMosaic-exp/issues/22
@ghost ghost closed this May 16, 2011
Added Export Options panel to World properties to allow the user
to set the archive mode of the world.
ExportWorld now has an export_rib() method that takes care of exporting
all the objects in the world.  ExportPass delegates to ExportWorld
the handling of object exporting.  The world can be setup as a ReadArchive.

World object can now have image and volume shaders attached to it and will
export them.
The 2 sides property of a mesh is now exported properly.

Materials are now within the attribute block of an object so
that they don't effect other objects.  This fixes #27 issue on
GitHub Repo: https://github.com/nfz/RIBMosaic-exp/issues/27.

Don't assume a world will always have a rib_archive property.  Preview
scenes will not.  So we now use getattr() function to attempt reading
the property.
@ghost ghost reopened this May 17, 2011
jeffmd added 17 commits May 20, 2011 14:34
… a pipeline:

File select is now automatic when adding a shader that is in the text editor
to a pipeline.
If the user loaded a blend file that was using RIBMosaic and selected
"sync pipelines" the preview would not update unless forced by the user.

The WM_OT_ribmosaic_modal_sync() operator renamed to WM_OT_ribmosiac_pipeline_sync()
to better reflect what it does.  It has also been promoted to a full operator
for the pipeline manager.
The user is no longer required to use "Setup Library" for the built in
pipeline shader libraries (ie. Library_Surface) or any pipeline that
stores its shaders in the same directory as the pipeline or in a sub directory.
… own method fix_pipeline_library().

This allows an operator to call on this method to fix pipelines that have moved
after being loaded.
The mesh no longer controls two sides attribute.
This allows much more flexibility over a mesh that has multiple materials
assigned to different faces of the mesh.

Fixed Transform spacing issue.
If there was only one render pass left then the user could not delete it.
The user can now delete the render pass and if there are no render passes left
after the deletion then the internal default render pass is used.

This fixes #29 issue on GitHub: https://github.com/nfz/RIBMosaic-exp/issues/29
This allows building shadow map passes etc with views from a light or from
an object when making reflection cube maps etc.

This fixes #9 issue on GitHub: https://github.com/nfz/RIBMosaic-exp/issues/9

Also fixed a small bug with orthographic projection - was using wrong
method to write to rib.
…orterArchive class:

Building lists of ExporterCommand, ExporterUtility, and ExporterShader can
now be easily done through the new methods added to ExporterArchive class:
build_exporter_list()
build_export_utilities_list()
build_export_commands_list()

This cuts down on a lot of code duplication that was happening in the different
object exporters.
  This is prelude code to supporting multiple materials on a mesh.  For
now cache is working but only one material is supported per mesh.

  This is for issue #15 on GitHub: https://github.com/nfz/RIBMosaic-exp/issues/15
Most of the new code comes from RibMosaic Beta-0.4.7 for Blender 2.49B.
Rather that rebuild the blender mesh for each material used, build
it once and use it for each material used on the mesh.
…ied by the user.

In Blender 2.57 the user had to force a material preview update by selecting one
of the preview options.

Blender 2.58 now supports property callbacks which allows a python script to perform
some action when the property value changes.  Shader parameters that are set
up as a property on the shader panel now have a callback assigned which does
what the user did in 2.57: force a preview update by changing the preview render type.
- Still need to pre-generate rib caches for each mesh material combo
- Moved transform RIB output to beginning of object export since
  multiple material + mesh exports will follow.
copy/paste error: copied some code from a different section and forgot to update
var name.

Embedded shaders in the pipeline will now be exported and compiled.

This fixes #30 issue on GitHub repo: https://github.com/nfz/RIBMosaic-exp/issues/30
This pipeline currently only has the rudimentary light shaders needed to
do point cloud based ambient occlusion.

  This is the bare bones stuff needed to do ambient occlusion in two passes:
First pass: bake the point cloud through the use of bake_ptc_light shader.
Second pass (beauty): perform occlusion calc in occ_ptc_light.

Still need to add a utility panel and python scripting to help new
users setup the first bake pass + AO light whith shaders automatically.

Pipeline was generated by Ribmosaic as a test.  Still a lot of work to be
done on pipeline generation tools.  Embedding shaders still a bit of a pita.

Pipeline is based on work done by Jonathan Merritt (lancelt) GitHub repo:
https://github.com/lancelet/pointrender-examples
@ghost ghost closed this Jul 11, 2011
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant