From bf046a51690848c53238b4e6a28c51a928e10145 Mon Sep 17 00:00:00 2001 From: Jordi Bares Date: Thu, 25 Apr 2019 23:07:58 +0100 Subject: [PATCH] Uploading site Thu 25 Apr 2019 23:07:58 BST Former-commit-id: 21fb7375dd47fcb6aa409b7d762ec32ff4d13a60 --- content/_index.md | 16 +++---- content/docs/about/_index.md | 9 ++++ content/docs/book/_index.md | 4 ++ content/docs/book/part-1/_index.md | 6 +++ .../docs/book/part-1/introduction/_index.md | 6 +++ content/docs/book/part-2/_index.md | 11 +++-- content/docs/book/part-3/_index.md | 12 +++-- content/docs/book/part-4/_index.md | 14 +++--- .../authoring/components/example.py | 11 +++++ .../authoring/components/index.md | 45 ++++++++++++++++++- .../authoring/screen-recording/index.md | 25 ----------- layouts/partials/docs/inject/menu-after.html | 5 +++ layouts/shortcodes/code.html | 35 +++++++++++++++ layouts/shortcodes/kode.html | 45 +++++++++++++++++++ public/svg/icons-pink/svg/search.svg | 2 +- static/svg/copycode.svg | 1 + themes/book | 2 +- 17 files changed, 195 insertions(+), 54 deletions(-) create mode 100644 content/docs/collaborating/authoring/components/example.py create mode 100644 layouts/partials/docs/inject/menu-after.html create mode 100644 layouts/shortcodes/code.html create mode 100644 layouts/shortcodes/kode.html create mode 100644 static/svg/copycode.svg diff --git a/content/_index.md b/content/_index.md index 99ced7e..d0bee13 100644 --- a/content/_index.md +++ b/content/_index.md @@ -5,18 +5,12 @@ type: docs # Introduction +{{< preamble >}} The goal of this collective book is to help accelerate the adoption of Houdini as the main tool in VFX by simplifying the transition from other tools to Houdini. +{{< /preamble >}} -## A bit of history +## Welcome -During 2008 Autodesk bought their arch-rivals, Softimage and included in their already crowded product line, all of us Softimage users started to notice massive changes during that period tailing off in the product development which ultimately ended up in Autodesk killing Softimage product 2014 and our lives were forced to transition to other products. +Welcome to Houdini Guides, the long awaited evolution of the original transition guides that hopefully allows the Houdini community to grow faster and bring this amazing tool to the masses. -I saw the writing on the all the moment Autodesk bought Softiamge so I did transition first and all my learnings became invaluable once Autodesk killed Softimage which prompt me to write a free book called "Houdini to Softimage transition guides" that was distributed freely thanks to the nice folks at Side Effects. - -## Today - -But of course, Houdini is moving very very fast indeed and these guides are a bit obsolete, the task is huge so I am thinking on starting a crowd sourced re-write to fill update from scratch the whole thing. - -## You - -And yes, I would be deligted you help us in any shape or form, from writting to creating videos to translation or donations. +Let's have fun. \ No newline at end of file diff --git a/content/docs/about/_index.md b/content/docs/about/_index.md index 1f6bc38..6943a5a 100644 --- a/content/docs/about/_index.md +++ b/content/docs/about/_index.md @@ -2,8 +2,17 @@ title: "About" weight: 1 --- + # About +## A bit of history + +During 2008 Autodesk bought their arch-rivals, Softimage and included in their already crowded product line, all of us Softimage users started to notice massive changes during that period tailing off in the product development which ultimately ended up in Autodesk killing Softimage product 2014 and our lives were forced to transition to other products. + +I saw the writing on the all the moment Autodesk bought Softimage so I did transition first and all my learnings became invaluable once Autodesk killed Softimage which prompt me to write a free book called "Houdini to Softimage transition guides" that was distributed freely thanks to the nice folks at Side Effects. + +## Objective + The intention is to create the kind of guides we users want to pass to our friends coming to Houdini, a guide the allows them to get a quick global view of the software and a good understanding of the phylosophy and common practices. For this reason a bunch of us are putting some of our spare time to build these docs. \ No newline at end of file diff --git a/content/docs/book/_index.md b/content/docs/book/_index.md index ec6f65f..153ffcd 100644 --- a/content/docs/book/_index.md +++ b/content/docs/book/_index.md @@ -5,6 +5,10 @@ weight: 2 # Introduction +{{< pill color="petrol" >}} +All Versions +{{< /pill >}} + This book is structured as a guides to transition rather than a reference, and in particular, it is architected as a linear journey to move quickly throught the various areas to get a good global view of the software an translate those years of experience coming form Maya, Cinema4D or others as fast as possible. Some chapters will be very dense and further re-organisation will be required so please keep in mind, your bookmarks may easily be broken for most part of the first year. \ No newline at end of file diff --git a/content/docs/book/part-1/_index.md b/content/docs/book/part-1/_index.md index 0cf62d9..b137e98 100644 --- a/content/docs/book/part-1/_index.md +++ b/content/docs/book/part-1/_index.md @@ -10,7 +10,13 @@ writer: "Jordi Bares" # Part 1 +{{< pill color="petrol" >}} +All Versions +{{< /pill >}} + +{{< preamble >}} Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< /preamble >}} ## Introduction diff --git a/content/docs/book/part-1/introduction/_index.md b/content/docs/book/part-1/introduction/_index.md index 407c4d8..894b939 100644 --- a/content/docs/book/part-1/introduction/_index.md +++ b/content/docs/book/part-1/introduction/_index.md @@ -10,7 +10,13 @@ writer: "Jordi Bares" # General Concepts +{{< pill color="petrol" >}} +All Versions +{{< /pill >}} + +{{< preamble >}} Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< /preamble >}} ## UI interface layout diff --git a/content/docs/book/part-2/_index.md b/content/docs/book/part-2/_index.md index a68ebb7..f4d74c6 100644 --- a/content/docs/book/part-2/_index.md +++ b/content/docs/book/part-2/_index.md @@ -9,18 +9,21 @@ tags: ["All Versions"] writer: "Jordi Bares" --- + # Part 2 -Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< pill color="petrol" >}} +All Versions +{{< /pill >}} -
+{{< preamble >}} +Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< /preamble >}} ## Animation Like -
- ## Rigging Houdini is not that different yet, it is another beast altogether if you don't get some fundamentals right, the same fundamentals that other packages hide from you, those are right. front and center in Houdini so we better get that right. diff --git a/content/docs/book/part-3/_index.md b/content/docs/book/part-3/_index.md index ae1ef1d..bb3358e 100644 --- a/content/docs/book/part-3/_index.md +++ b/content/docs/book/part-3/_index.md @@ -9,18 +9,22 @@ tags: ["All Versions"] writer: "Jordi Bares" --- + # Part 3 -Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. -
+{{< pill color="petrol" >}} +All Versions +{{< /pill >}} + +{{< preamble >}} +Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< /preamble >}} ## Data Management Like -
- ## Digital Assets Houdini is not that different yet, it is another beast altogether if you don't get some fundamentals right, the same fundamentals that other packages hide from you, those are right. front and center in Houdini so we better get that right. diff --git a/content/docs/book/part-4/_index.md b/content/docs/book/part-4/_index.md index 6cf1a0c..0e8dcc3 100644 --- a/content/docs/book/part-4/_index.md +++ b/content/docs/book/part-4/_index.md @@ -9,24 +9,26 @@ tags: ["All Versions"] writer: "Jordi Bares" --- + # Part 2 -Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. -
+{{< pill color="petrol" >}} +All Versions +{{< /pill >}} + +{{< preamble >}} +Before we start with the details, it is important to build a foundation of key concepts and procedures so you understand how Houdini operates. +{{< /preamble >}} ## FX Like -
- ## Lighting Houdini is not that different yet, it is another beast altogether if you don't get some fundamentals right, the same fundamentals that other packages hide from you, those are right. front and center in Houdini so we better get that right. -
- ## Compositing Like diff --git a/content/docs/collaborating/authoring/components/example.py b/content/docs/collaborating/authoring/components/example.py new file mode 100644 index 0000000..d96ce4b --- /dev/null +++ b/content/docs/collaborating/authoring/components/example.py @@ -0,0 +1,11 @@ +def unparentAndKeepPos(obj_node): + """ + Unparent an object node, but keep it in the same position as it was + when it was parented. + """ + + xform = obj_node.worldTransform() + obj_node.setFirstInput(None) + obj_node.setWorldTransform(xform) + +unparentAndKeepPos(hou.node("/obj/box_object4")) \ No newline at end of file diff --git a/content/docs/collaborating/authoring/components/index.md b/content/docs/collaborating/authoring/components/index.md index ff86dd9..f46a82a 100644 --- a/content/docs/collaborating/authoring/components/index.md +++ b/content/docs/collaborating/authoring/components/index.md @@ -276,9 +276,9 @@ Which will result in --- -### Code +### Inline Code -If you have inline code blocks, wrap them in backticks: +We promote two different narratives, when you are doing little examples that are not completely independent, use for inline code blocks, wrap them in backticks: ``` `var example = true`. @@ -314,6 +314,8 @@ if (isAwesome): return true ``` +For scripts and others that are functioning and could be downloaded, better use the shortode provided (you can see it in action at the bottom of this document) + --- ### Markdown Extras @@ -589,3 +591,42 @@ Which will be rendered like this. >}} {{< /accordion >}} + +--- + +### Code examples + +Sometimes you want the user to be able to copy the code, for this a more advanced shortcode tool is provided. + +``` go +{{ < code file="example.py" language="python" > }} +``` + +which renders like; + +{{< code file="example.py" language="python" >}} + +--- + +### Import + +Import allows you to include external files in the document which is very helpful when dealing with very long scripts that you want to be able to download and execute later on. + +``` +{{ % import file="/static/python/example.py" language="python" % }} +``` + +Resulting in printing the contents of the files /static/pyhon/example.py + +{{% import file="/static/python/example.py" language="python" %}} + + +Of course you can also include the files as they are by tagging them as markdown with the "language" attribute, likes this... + +``` +{{ % import file="/static/md/lorem-ipsum.md" language="md" % }} +``` + +Which will render the content of the file, acting as a pure import... like this... + +{{% import file="/static/md/lorem-ipsum.md" language="md" %}} diff --git a/content/docs/collaborating/authoring/screen-recording/index.md b/content/docs/collaborating/authoring/screen-recording/index.md index 7e8dd25..14d89d9 100644 --- a/content/docs/collaborating/authoring/screen-recording/index.md +++ b/content/docs/collaborating/authoring/screen-recording/index.md @@ -16,28 +16,3 @@ stringit, frustra Saturnius uteroque inter! Oculis non ritibus Telethusa protulit, sed sed aere valvis inhaesuro Pallas animam: qui _quid_, ignes. Miseratus fonte Ditis conubia. - ---- - -### Import - -Import allows you to include external files in the document which is very helpful when dealing with very long scripts that you want to be able to download and execute later on. - -``` -{{ % import file="/static/python/example.py" language="python" % }} -``` - -Resulting in printing the contents of the files /static/pyhon/example.py - -{{% import file="/static/python/example.py" language="python" %}} - - -Of course you can also include the files as they are by tagging them as markdown with the "language" attribute, likes this... - -``` -{{ % import file="/static/md/lorem-ipsum.md" language="md" % }} -``` - -Which will render the content of the file, acting as a pure import... like this... - -{{ % import file="/static/md/lorem-ipsum.md" language="md" % }} diff --git a/layouts/partials/docs/inject/menu-after.html b/layouts/partials/docs/inject/menu-after.html new file mode 100644 index 0000000..2a4e1f3 --- /dev/null +++ b/layouts/partials/docs/inject/menu-after.html @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/layouts/shortcodes/code.html b/layouts/shortcodes/code.html new file mode 100644 index 0000000..5228f24 --- /dev/null +++ b/layouts/shortcodes/code.html @@ -0,0 +1,35 @@ + + +{{ $p := .Page }} +{{ $file := .Get "file" }} +{{ $codelang := .Get "language" | default (path.Ext $file | strings.TrimPrefix ".") }} +{{ $fileDir := path.Split $file }} +{{ $bundlePath := path.Join .Page.File.Dir $fileDir.Dir }} +{{ $filename := printf "/content/examples/%s" $file | safeURL }} +{{ $ghlink := printf "https://%s/master%s" site.Params.githubwebsiteraw $filename | safeURL }} +{{/* First assume this is a bundle and the file is inside it. */}} +{{ $resource := $p.Resources.GetMatch (printf "%s*" $file ) }} +{{ with $resource }} +{{ $.Scratch.Set "content" .Content }} +{{ else }} +{{/* Read the file relative to the content root. */}} +{{ $resource := readFile $filename}} +{{ with $resource }}{{ $.Scratch.Set "content" . }}{{ end }} +{{ end }} +{{ if not ($.Scratch.Get "content") }} +{{ errorf "[%s] %q not found in %q" site.Language.Lang $fileDir.File $bundlePath }} +{{ end }} +{{ with $.Scratch.Get "content" }} + +
+ + {{ $file }} + + + {{ highlight . $codelang "" }} +{{ end }} \ No newline at end of file diff --git a/layouts/shortcodes/kode.html b/layouts/shortcodes/kode.html new file mode 100644 index 0000000..b709f4a --- /dev/null +++ b/layouts/shortcodes/kode.html @@ -0,0 +1,45 @@ + + +{{ $p := .Page }} +{{ $file := .Get "file" }} +{{ $codelang := .Get "language" | default (path.Ext $file | strings.TrimPrefix ".") }} +{{ $fileDir := path.Split $file }} +{{ $bundlePath := path.Join .Page.File.Dir $fileDir.Dir }} +{{ $filename := printf "/content/%s/examples/%s" .Page.Lang $file | safeURL }} +{{ $ghlink := printf "https://%s/master%s" site.Params.githubwebsiteraw $filename | safeURL }} +{{/* First assume this is a bundle and the file is inside it. */}} +{{ $resource := $p.Resources.GetMatch (printf "%s*" $file ) }} +{{ with $resource }} +{{ $.Scratch.Set "content" .Content }} +{{ else }} +{{/* Read the file relative to the content root. */}} +{{ $resource := readFile $filename}} +{{ with $resource }}{{ $.Scratch.Set "content" . }}{{ end }} +{{ end }} +{{ if not ($.Scratch.Get "content") }} +{{ errorf "[%s] %q not found in %q" site.Language.Lang $fileDir.File $bundlePath }} +{{ end }} +{{ with $.Scratch.Get "content" }} + + + + + + + + + + + +
+ {{ with $ghlink }}{{ end }} + {{ $file }} + {{ if $ghlink }}{{ end }} + +
{{ highlight . $codelang "" }}
+{{ end }} \ No newline at end of file diff --git a/public/svg/icons-pink/svg/search.svg b/public/svg/icons-pink/svg/search.svg index a87b453..f82a3ed 100644 --- a/public/svg/icons-pink/svg/search.svg +++ b/public/svg/icons-pink/svg/search.svg @@ -1 +1 @@ - Search Icon of a magnifying glass \ No newline at end of file + \ No newline at end of file diff --git a/static/svg/copycode.svg b/static/svg/copycode.svg new file mode 100644 index 0000000..36bdace --- /dev/null +++ b/static/svg/copycode.svg @@ -0,0 +1 @@ + Cut Icon of scrissors \ No newline at end of file diff --git a/themes/book b/themes/book index 5affd26..b10d1e9 160000 --- a/themes/book +++ b/themes/book @@ -1 +1 @@ -Subproject commit 5affd26bfb4e692ffe468f411fb83deb64dd6495 +Subproject commit b10d1e959c25a36cf58f570d12d15820ca1d3ee7