Skip to content

Commit

Permalink
many doc fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
devernay committed Apr 28, 2018
1 parent 718d470 commit 6d3931a
Show file tree
Hide file tree
Showing 80 changed files with 783 additions and 844 deletions.
12 changes: 6 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -646,7 +646,7 @@ with a scale of 10 then only the downstream node will be rendered with a scale o
* Several outputs are connected to this node
* The node has a single output, but that output has its settings panel opened (Meaning the user is heavily editing the output effect and would like the input branch being in the cache)
* The node has its preview image enabled (in interactive session only)
* The node is using several images at different times to compute the result of the output (e.g: a retimer node)
* The node is using several images at different times to compute the result of the output (e.g. a retimer node)
* The parameter "Force caching" in the "Node" tab of the settings panel is checked
Aggressive caching can however make the interactivity of Natron slightly faster (when using it in GUI mode) but would not be any useful in background render mode, so make sure it is checked off when rendering on disk.
You can by-pass this behaviour and come-back to the original "Aggressive caching" solution by turning it on in the Preferences of Natron. At least 8GiB of RAM are required to use aggressive caching, 16GiB are recommended.
Expand Down Expand Up @@ -716,7 +716,7 @@ scroll the items by pressing the up/down arrows. Checkbox can now also have focu
- New BlurGuided node using the CImg library. This is a faster bilateral blur
- New AdjustRoD node to enlarge/shrink the region of definition (bounding box) of an image
- A new button on the Transform node allows to recenter the handle to the center of the input image.
- The project can now be versioned by pressing CTRL + ALT + SHIFT + S (or by the File menu). This will save the project and increment its version, e.g:
- The project can now be versioned by pressing CTRL + ALT + SHIFT + S (or by the File menu). This will save the project and increment its version, e.g.:
- MyProject_001.ntp
- MyProject_002.ntp
- ...
Expand Down Expand Up @@ -803,16 +803,16 @@ use the TuttleHistogramKeyer node.
- New "turbo-mode": when enabled nothing but the viewer will be refreshed during playback for maximum efficiency. Mainly this overcomes the issue that all parameters animation refresh can be expensive during playback.
- New checkerboard mode for the viewer: when checked, everything transparent in the image will have a checkerboard behind. This can enable you to better appreciate transparency. You can control the color of the checkerboard and its size in Natron's preferences.
- Project paths: The project can now have path variables that allows you to express file paths relative to a variable instead of always using absolute file paths. This is great for sharing work with others and/or moving image files safely.By default there is always the variable [Project] that will be set to the location of your project file (.ntp).
- Project paths are to be used between brackets, e.g:
- Project paths are to be used between brackets, e.g.:
- [MyPath]myImage.png
- You can also express files in a relative manner to a variable, e.g:
- You can also express files in a relative manner to a variable, e.g.:
- [MyPath]../../Images/myImage.png
- By default if you don't specify any project path but express the file in a relative manner, it will be understood as being relative to the [Project] path. For example, if [Project] is:
`/Users/Me/Project/`
Then
`../Images/Pictures/img.png`
would in fact expand to: `/Users/Me/Images/Pictures/img.png`
You can also have some project paths depending on other paths, e.g:
You can also have some project paths depending on other paths, e.g.:
```
[Project] = /Users/Me/Project/
[Scene1] = [Project]Footage/Scene1/
Expand Down Expand Up @@ -841,7 +841,7 @@ Then all file-paths that depended on this variable will be updated to point to t
- Undo/Redo support was added for restoring default parameters
- The "link to..." dialog for parameters have been re-designed for a better user interface
- The "Tab" menu to quickly create a node has been slightly adjusted: you can now type in
anything any word , e.g: "Blur" and it will propose all types of Blurs.
anything any word , e.g. "Blur" and it will propose all types of Blurs.
- Value parameters can now have their increment based on where the mouse cursor is
- New nodes menu icons were made by Jean Christophe Levet.

Expand Down
6 changes: 3 additions & 3 deletions Documentation/Presentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ in the compositing field:
Blender is probably the most well known open-source software in the 3D-modeling and
animation field. This is not so true for its compositing module. I see 2 reasons for this:
- The graphical user interface is too complicated and is far from what industry softwares
interfaces actually look like (i.e The Foundry Nuke ,Adobe After Effects,eyeon Fusion,...)
interfaces actually look like (i.e. The Foundry Nuke ,Adobe After Effects,eyeon Fusion,...)
- This open-source solution doesn't implement the standard open-source solution for making
visual effects plug-ins: OpenFX !
This is really game breaking, more and more professional studios are developing plug-ins
Expand Down Expand Up @@ -151,7 +151,7 @@ Also the rendering can be launched as a background process (i.e: command-line) w
any graphical user interface. (It doesn't even require a X11 server on linux).
This allows the application to be launched by several computers at the same time (i.e:
a render farm) with a simple shell script that would dispatch the total image sequences
among the available computers (e.g: PC 1 takes frames 0-99, PC 2 takes frames 100-199
among the available computers (e.g. PC 1 takes frames 0-99, PC 2 takes frames 100-199
etc...).

See the [command line manual](#cmdlineArgs) for more informations.
Expand Down Expand Up @@ -242,6 +242,6 @@ Starts Natron in background mode, no graphical user interface will be displayed.

* --writer <WriterNodeName>
WriterNodeName should contain the name of a writer node in the project that will be used
to render. You can chain this argument multiple times, e.g:
to render. You can chain this argument multiple times, e.g.:

./Natron --background --writer Writer_1 --writer Writer_2 toto.ntp
10 changes: 5 additions & 5 deletions Documentation/ofx_plugin_programming_guide.html
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@
the official guys from the OpenFX association have made a C++ wrapper
around it so it is easier to use. The wrapper on the plug-in side is
called the <B>Support</B> layer and the one on the Host side (the
application, e.g: Natron) is called the <B>HostSupport</B> layer.</P>
application, e.g. Natron) is called the <B>HostSupport</B> layer.</P>
<P CLASS="p2" STYLE="margin-bottom: 0.5cm"><BR><BR>
</P>
<P CLASS="p7" STYLE="margin-bottom: 0.5cm">The official repository of
Expand Down Expand Up @@ -366,7 +366,7 @@
<FONT COLOR="#c67c48"><FONT FACE="Menlo-Regular">kOfxImageEffectPluginPropGrouping</FONT></FONT><FONT COLOR="#c67c48">
</FONT><FONT COLOR="#000000"><FONT FACE="Menlo-Regular">property that
is a string containing the menu group under which you want your
plug-in appear, e.g: “Transform” or “Color/Transform”</FONT></FONT></FONT></P>
plug-in appear, e.g. “Transform” or “Color/Transform”</FONT></FONT></FONT></P>
<P CLASS="p2" STYLE="margin-bottom: 0.5cm"><BR><BR>
</P>
<P CLASS="p6" STYLE="margin-bottom: 0.5cm"><B>The plug-in object</B></P>
Expand Down Expand Up @@ -484,7 +484,7 @@
by this effect.</P>
<P CLASS="p7" STYLE="margin-bottom: 0.5cm">If your plug-in doesn't
apply any geometrical transformation to the image, then it is
probably not modifying it's size (e.g: an Invert plug-in doesn't
probably not modifying it's size (e.g. an Invert plug-in doesn't
modify the image's region of definition.) In that case you do not
need to implement this function, this is the default behaviour to
return the region of definition of the source clip.</P>
Expand Down Expand Up @@ -619,7 +619,7 @@
OFX::FramesNeededSetter &amp;frames) OVERRIDE FINAL</FONT></FONT></FONT><FONT COLOR="#ffffff"><FONT FACE="Menlo-Regular"><FONT SIZE=2 STYLE="font-size: 11pt">;</FONT></FONT></FONT></P>
<P CLASS="p2" STYLE="margin-bottom: 0.5cm"><FONT COLOR="#000000"><FONT FACE="Helvetica, sans-serif"><FONT SIZE=1 STYLE="font-size: 8pt">If
you were to write a plug-in that needs images at different times to
do its processing, e.g: a Retiming plug-in that would need the image
do its processing, e.g. a Retiming plug-in that would need the image
at T – 1 and T + 1 in order to produce the image at frame T, you
need to implement this action.</FONT></FONT></FONT></P>
<P CLASS="p2" STYLE="margin-bottom: 0.5cm"><FONT COLOR="#000000"><FONT FACE="Helvetica, sans-serif"><FONT SIZE=1 STYLE="font-size: 8pt">This
Expand Down Expand Up @@ -2071,4 +2071,4 @@
<P CLASS="p2" STYLE="margin-bottom: 0.5cm"><BR><BR>
</P>
</BODY>
</HTML>
</HTML>
4 changes: 2 additions & 2 deletions Documentation/source/_prefs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ Controls how many threads Natron should use to render.

-1: Disable multithreading totally (useful for debugging)

0: Guess the thread count from the number of cores.
0: Guess the thread count from the number of cores. The ideal threads count for this hardware is 8.

**Number of parallel renders (0=“guess”)**

Expand Down Expand Up @@ -198,7 +198,7 @@ If not checked, Natron will only cache the nodes which have multiple outputs, or

**Maximum amount of RAM memory used for caching (% of total RAM)**

This setting indicates the percentage of the total RAM which can be used by the memory caches.
This setting indicates the percentage of the total RAM which can be used by the memory caches. This system has 16.00 GiB of RAM.

**System RAM to keep free (% of total RAM)**

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,18 @@ See the :ref:`detailed description<details>` below
Functions
^^^^^^^^^

* def :meth:`deleteValueAtTime<NatronEngine.AnimatedParam.deleteValueAtTime>` (time[, dimension=0])
* def :meth:`getCurrentTime<NatronEngine.AnimatedParam.getCurrentTime>` ()
* def :meth:`getDerivativeAtTime<NatronEngine.AnimatedParam.getDerivativeAtTime>` (time[, dimension=0])
* def :meth:`getExpression<NatronEngine.AnimatedParam.getExpression>` (dimension)
* def :meth:`getIntegrateFromTimeToTime<NatronEngine.AnimatedParam.getIntegrateFromTimeToTime>` (time1, time2[, dimension=0])
* def :meth:`getIsAnimated<NatronEngine.AnimatedParam.getIsAnimated>` ([dimension=0])
* def :meth:`getKeyIndex<NatronEngine.AnimatedParam.getKeyIndex>` (time[, dimension=0])
* def :meth:`getKeyTime<NatronEngine.AnimatedParam.getKeyTime>` (index, dimension)
* def :meth:`getNumKeys<NatronEngine.AnimatedParam.getNumKeys>` ([dimension=0])
* def :meth:`removeAnimation<NatronEngine.AnimatedParam.removeAnimation>` ([dimension=0])
* def :meth:`setExpression<NatronEngine.AnimatedParam.setExpression>` (expr, hasRetVariable[, dimension=0])
* def :meth:`setInterpolationAtTime<NatronEngine.AnimatedParam.setInterpolationAtTime>` (time, interpolation[, dimension=0])
- def :meth:`deleteValueAtTime<NatronEngine.AnimatedParam.deleteValueAtTime>` (time[, dimension=0])
- def :meth:`getCurrentTime<NatronEngine.AnimatedParam.getCurrentTime>` ()
- def :meth:`getDerivativeAtTime<NatronEngine.AnimatedParam.getDerivativeAtTime>` (time[, dimension=0])
- def :meth:`getExpression<NatronEngine.AnimatedParam.getExpression>` (dimension)
- def :meth:`getIntegrateFromTimeToTime<NatronEngine.AnimatedParam.getIntegrateFromTimeToTime>` (time1, time2[, dimension=0])
- def :meth:`getIsAnimated<NatronEngine.AnimatedParam.getIsAnimated>` ([dimension=0])
- def :meth:`getKeyIndex<NatronEngine.AnimatedParam.getKeyIndex>` (time[, dimension=0])
- def :meth:`getKeyTime<NatronEngine.AnimatedParam.getKeyTime>` (index, dimension)
- def :meth:`getNumKeys<NatronEngine.AnimatedParam.getNumKeys>` ([dimension=0])
- def :meth:`removeAnimation<NatronEngine.AnimatedParam.removeAnimation>` ([dimension=0])
- def :meth:`setExpression<NatronEngine.AnimatedParam.setExpression>` (expr, hasRetVariable[, dimension=0])
- def :meth:`setInterpolationAtTime<NatronEngine.AnimatedParam.setInterpolationAtTime>` (time, interpolation[, dimension=0])

.. _details:

Expand All @@ -40,7 +40,7 @@ the parameter should have at least 1 keyframe. Keyframes can be added in the der
(since function signature is type specific) with the *setValueAtTime* function.
Once 2 keyframes are active on the parameter, the value of the parameter will be interpolated
automatically by Natron for a given time.
You can control keyframes by adding,removing, changing their values and their :ref:`interpolation<NatronEngine.Natron.KeyframeTypeEnum>` type.
You can control keyframes by adding,removing, changing their values and their :class:`KeyFrameTypeEnum<NatronEngine.Natron.KeyframeTypeEnum>` type.

Note that by default new keyframes are always with a **Smooth** interpolation.

Expand Down
53 changes: 27 additions & 26 deletions Documentation/source/devel/PythonReference/NatronEngine/App.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,27 +16,28 @@ See :ref:`detailed<app.details>` description...

Functions
^^^^^^^^^
* def :meth:`addProjectLayer<NatronEngine.App.addProjectLayer>` (layer)
* def :meth:`addFormat<NatronEngine.App.addFormat>` (formatSpec)
* def :meth:`createNode<NatronEngine.App.createNode>` (pluginID[, majorVersion=-1[, group=None] [, properties=None]])
* def :meth:`createReader<NatronEngine.App.createReader>` (filename[, group=None] [, properties=None])
* def :meth:`createWriter<NatronEngine.App.createWriter>` (filename[, group=None] [, properties=None])
* def :meth:`getAppID<NatronEngine.App.getAppID>` ()
* def :meth:`getProjectParam<NatronEngine.App.getProjectParam>` (name)
* def :meth:`getViewNames<NatronEngine.App.getViewNames>` ()
* def :meth:`render<NatronEngine.App.render>` (effect,firstFrame,lastFrame[,frameStep])
* def :meth:`render<NatronEngine.App.render>` (tasks)
* def :meth:`saveTempProject<NatronEngine.App.saveTempProject>` (filename)
* def :meth:`saveProject<NatronEngine.App.saveProject>` (filename)
* def :meth:`saveProjectAs<NatronEngine.App.saveProjectAs>` (filename)
* def :meth:`loadProject<NatronEngine.App.loadProject>` (filename)
* def :meth:`resetProject<NatronEngine.App.resetProject>` ()
* def :meth:`closeProject<NatronEngine.App.closeProject>` ()
* def :meth:`newProject<NatronEngine.App.newProject>` ()
* def :meth:`timelineGetLeftBound<NatronEngine.App.timelineGetLeftBound>` ()
* def :meth:`timelineGetRightBound<NatronEngine.App.timelineGetRightBound>` ()
* def :meth:`timelineGetTime<NatronEngine.App.timelineGetTime>` ()
* def :meth:`writeToScriptEditor<NatronEngine.App.writeToScriptEditor>` (message)

- def :meth:`addProjectLayer<NatronEngine.App.addProjectLayer>` (layer)
- def :meth:`addFormat<NatronEngine.App.addFormat>` (formatSpec)
- def :meth:`createNode<NatronEngine.App.createNode>` (pluginID[, majorVersion=-1[, group=None] [, properties=None]])
- def :meth:`createReader<NatronEngine.App.createReader>` (filename[, group=None] [, properties=None])
- def :meth:`createWriter<NatronEngine.App.createWriter>` (filename[, group=None] [, properties=None])
- def :meth:`getAppID<NatronEngine.App.getAppID>` ()
- def :meth:`getProjectParam<NatronEngine.App.getProjectParam>` (name)
- def :meth:`getViewNames<NatronEngine.App.getViewNames>` ()
- def :meth:`render<NatronEngine.App.render>` (effect,firstFrame,lastFrame[,frameStep])
- def :meth:`render<NatronEngine.App.render>` (tasks)
- def :meth:`saveTempProject<NatronEngine.App.saveTempProject>` (filename)
- def :meth:`saveProject<NatronEngine.App.saveProject>` (filename)
- def :meth:`saveProjectAs<NatronEngine.App.saveProjectAs>` (filename)
- def :meth:`loadProject<NatronEngine.App.loadProject>` (filename)
- def :meth:`resetProject<NatronEngine.App.resetProject>` ()
- def :meth:`closeProject<NatronEngine.App.closeProject>` ()
- def :meth:`newProject<NatronEngine.App.newProject>` ()
- def :meth:`timelineGetLeftBound<NatronEngine.App.timelineGetLeftBound>` ()
- def :meth:`timelineGetRightBound<NatronEngine.App.timelineGetRightBound>` ()
- def :meth:`timelineGetTime<NatronEngine.App.timelineGetTime>` ()
- def :meth:`writeToScriptEditor<NatronEngine.App.writeToScriptEditor>` (message)

.. _app.details:

Expand Down Expand Up @@ -99,7 +100,7 @@ given a filename::
reader = app.createReader("/Users/me/Pictures/mySequence###.exr")
writer = app.createWriter("/Users/me/Pictures/myVideo.mov")

In case 2 plug-ins can decode/encode the same format, e.g: ReadPSD and ReadOIIO can both
In case 2 plug-ins can decode/encode the same format, e.g. ReadPSD and ReadOIIO can both
read .psd files, internally Natron picks the "best" OpenFX plug-in to decode/encode the image sequence/video
according to the settings in the Preferences of Natron.
If however you need a specific decoder/encoder to decode/encode the file format, you can use
Expand Down Expand Up @@ -256,7 +257,7 @@ Here is an example on how to pass properties to the createNode function::
is specified by a property. Each default value must be specified by a property whose name is
in the form *CreateNodeArgsPropParamValue_PARAMETERNAME* where *PARAMETERNAME* must be replaced by the
*script-name* of the parameter. The property must have the same type as the data-type of
the parameter (e.g: int for IntParam, float for FloatParam, bool for BooleanParam, String for StringParam).
the parameter (e.g. int for IntParam, float for FloatParam, bool for BooleanParam, String for StringParam).


- *Name*: **CreateNodeArgsPropOutOfProject**
Expand All @@ -267,7 +268,7 @@ Here is an example on how to pass properties to the createNode function::

*Default*: False

*Description*: When True the node will not be part of the project. The node can be used for internal used, e.g in a Python script but will
*Description*: When True the node will not be part of the project. The node can be used for internal used, e.g. in a Python script but will
not appear to the user. It will also not be saved in the project.


Expand Down Expand Up @@ -344,7 +345,7 @@ Creates a reader to decode the given *filename*.
The optional *group* parameter can be used to specify into which :doc:`group<Group>` the node
should be created, *None* meaning the project's top level.

In case 2 plug-ins can decode the same format, e.g: ReadPSD and ReadOIIO can both
In case 2 plug-ins can decode the same format, e.g. ReadPSD and ReadOIIO can both
read .psd files, internally Natron picks the "best" OpenFX plug-in to decode the image sequence/video
according to the settings in the Preferences of Natron.
If however you need a specific decoder to decode the file format, you can use
Expand All @@ -362,7 +363,7 @@ Creates a reader to decode the given *filename*.
The optional *group* parameter can be used to specify into which :doc:`group<Group>` the node
should be created, *None* meaning the project's top level.

In case 2 plug-ins can encode the same format, e.g: WritePFM and WriteOIIO can both
In case 2 plug-ins can encode the same format, e.g. WritePFM and WriteOIIO can both
write .pfm files, internally Natron picks the "best" OpenFX plug-in to encode the image sequence/video
according to the settings in the Preferences of Natron.
If however you need a specific decoder to encode the file format, you can use
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,10 @@ the :doc:`Effect` class.
Functions
^^^^^^^^^


* def :meth:`getParam<NatronEngine.AppSettings.getParam>` (scriptName)
* def :meth:`getParams<NatronEngine.AppSettings.getParams>` ()
* def :meth:`restoreDefaultSettings<NatronEngine.AppSettings.restoreDefaultSettings>` ()
* def :meth:`saveSettings<NatronEngine.AppSettings.saveSettings>` ()


- def :meth:`getParam<NatronEngine.AppSettings.getParam>` (scriptName)
- def :meth:`getParams<NatronEngine.AppSettings.getParams>` ()
- def :meth:`restoreDefaultSettings<NatronEngine.AppSettings.restoreDefaultSettings>` ()
- def :meth:`saveSettings<NatronEngine.AppSettings.saveSettings>` ()

Member functions description
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
Loading

0 comments on commit 6d3931a

Please sign in to comment.