New in Cinema 4D Release 17 Quickstart: Render Tokens for Filename and Location Templates

Photo of Cineversity

Instructor Cineversity

Share this video
  • Duration: 08:29
  • Views: 6248
  • Made with Release: 17
  • Works with Release: 17 and greater

C4D R17 Render Tokens offer filename templates, named object buffers, and pass folders

Set up flexible filename templates for all your rendered files using Render Tokens and relative paths in Cinema 4D Release 17. Automatically name rendered files based on the project name, take name, render setting name or other scene attributes. The $userpass token provides named object buffers and the ability to sort each pass into its own subfolder. Add new tokens thanks to an extensible API.

The referenced CV-Tokens plugin will be available when R17 ships in September.



Now you can use tokens and relative paths when setting up the destination for your rendered files. This means you can set up a consistent file name template that works from project to project without the need to manually change the render path. It also means you can now place each pass in its own subdirectory and give object buffers a descriptive name. Tokens appear within your path as a special string that starts with a dollar sign and the string is replaced with the data that the token represents. You can easily add tokens using the pop-up to the right of the file name and there's options to use the current camera, the current frame, the pass name, the take, the frame range, frame rate, project name, render settings and resolution. So I'll just click to add the project name to the end of my path. In my folder structure, there's a renders folder beside the folder that contains all of the C4D files, and I wanna get all of my files into this directory. And so, I'm using relative paths here, the ../ actually moves me up into that main parent directory and then I can go back down into the renders directory from there. And I'm gonna name my file based on the take name and the project name. And because the project name changes each time I save incrementally, I'll always know which version of the project was rendered. Now let's take a look at the multi-pass path, here I'm going into the same renders folder and I've got $take_$prj, but I wanna actually make that a directory so I'm gonna add a slash at the end. And this is where it gets really cool, next I'm gonna $userpass token which I can add by going into the pop-up here and choosing current pass name user defined. And you'll notice there's both a current pass name and a user defined pass name, and this user defined pass name is the really cool one because it actually allows me to use a custom pass name that I've defined over here. So here you can see I've got a whole bunch of object buffers that I've already created and I might just go ahead and create an additional one and I want that to be group ID one and then I'm just gonna double-click to rename this Trails. And I can reorder these however I want I'll just put that up at the top and now each of these object buffers will be named in the actual file name. Now I'm gonna go a step further and make that a subdirectory. So I'm going to put another slash after that and now I'm going to go ahead and put the name that I want for my file. And here again I'm gonna use the $take and an underscore and then the $prj name. So once you're familiar with the tokens, you can just simply type them directly into the file path as well. You don't have to use the pop-up to add them. Now one special thing down here I'm not using a multi-layered file because I want separate files for each of my passes and I've disabled layer name as suffix. Instead I'm using the user-defined layer name, which is the custom layer name I set here so it's actually going to be added into this file name as well as the take and the project. So let's go ahead and hit render and see how that looks in our file structure. Now we'll jump back into that renders folder. Here you can see that we've got our regular image which is named based on the take name and the project file name and then the frame number as normal and then I've got a folder for the take name and the project name and this is where all of my passes are located. And here you can see I've got an individual folder for each of my passes. So I can jump in here to the trails pass and there I have my object buffer, named trails, for specifically the trails pass. So this becomes really important when you've got all of your frames rendered and you're turning a folder that's got tons and tons of individual files into a much more organized hierarchy. So that's one example, let's take a look at another. In our pipeline, we actually deliver dailies each day and we put them in a folder that's up a couple of levels from where our C4D files are, so we're going up to shots and then from there up to the main project folder. And then we go back down into deliverables and then dailies. And then under there we've got the folder for each date and then we place any dailies for that day in the folder. So back in Cinema 4D, I've got a child render setting set up the renders all frames with the hardware render so I can get a quick daily render and I've set up a save path here where I'm using .. / several times to get back up to that mean parent folder and then going back down into the deliverables folder and then the dailies folder. But here's where we run into a little bit of a snag. We actually need to be able to generate the date and that's not a built-in token but the great thing is is that tokens is extensible via Cinema 4D API. So this lets you add more tokens to fit your own pipeline. So I've already started a plugin that we're going to distribute here on Cineversity called CV tokens that creates some of these additional tokens for us. And we'll go ahead and drop that into the plugins folder and restart Cinema 4D. And we're gonna reopen that file that we were working with. So now you can see that in the drop down, here, we've got some additional options, we can get the OS computer name as well as the OS username, the author name that's specified in the project settings as well as the day, month two digit year and four digit year. And by the time you download this plugin, there maybe additional tokens as well. But you see that now what I can do is generate this custom string based on the current day. And so now, I'll go ahead and fire off this render and that's going to start that hardware render and I'll jump into the project folder again and here you can see that we have a new folder for today's date and we also have our file and it's named based on the current project file name, the current take name and my initials which I placed in the author field of the project settings. Now you'll probably want default file name templates like this to be a part of every file that you create, and there's a couple of different ways to set that up. The easiest is to use a new. C4D file. So if I copy this under setting and create a new scene file and simply paste it once again into the render settings and I wanna clean this up to remove anything that seems specific like all of my individual pass names and also the global illumination and lens distortion. And then what I'll do is save this as a file on my desktop called new. C4D. Then what you want to do is go ahead and open your preferences folder using the open preferences folder button, and we'll go back to the desktop and copy new. C4D into the preferences. And now, each time you create a new scene file, you can see that that save path is going to be inserted by default. Now if you want a little bit more flexibility and additional file name templates, the other thing that you can do is create a new render setting and go in here and just copy the items that you want to change in a render preset. So we're going to take our file name template here and we'll go ahead and take multi-pass as well and take the file name template for that. And now what I'm going to do is select that new render setting and I'm going to go down here and choose Save Difference Preset. And here in the name dialog we're gonna type Fn-RenderFolder as a name for this specific preset. This stores a preset in the content browser that you can easily apply to any render setting by choosing the apply difference preset option. And this is nice because it provide a you the flexibility to have multiple different templates for different types of projects. So now whether you work in a big studio or a team of one, you've got a really flexible system to organize your rendered files.
이제부터 여러분은 토큰과 상대 경로를 이용하여 렌더링 파일의 저장 위치를 지정할 수 있습니다. 다시 말해, 일관된 파일 이름 템플릿을 설정하여, 일일이 렌더링 경로를 수동으로 변경할 필요없이 프로젝트 별로 템플릿이 동작하도록 할 수있습니다. 또한 각각의 패스를 자신의 서브 디렉토리 안에 위치시키고 오브젝트 버퍼들에게 이를 식별할 수 있는 이름을 부여할 수 있습니다. 토큰은 저장 경로 내에 특수 문자열로 나타나는 데, 이 특수 문자열은 달라 기호($)로 시작하고, 문자열은 토큰이 의미하는 데이타들로 대체됩니다. 여러분은 파일 이름 오른쪽에있는 팝업을 이용하여 손쉽게 토큰을 추가할 수 있는데, 토큰에는 사용할 수 있는 여러 옵션들이 있는데, 현재 카메라, 현재 프레임, 패스 이름, 테이크, 프레임 레인지, 프레임 레이트, 프로젝트 이름, 렌더 설정, 해상도 등등이 있습니다. 여기서는 프로젝트 이름을 클릭하여 경로의 맨 뒤에 추가하겠습니다. 내 폴더 스트럭쳐는 모든 C4D 파일들을 포함하고 있는 폴더 외에 renders 폴더가 있습니다. 나는 모든 내 파일들을 이 디렉토리에 두고 싶습니다. 그래서 여기에 상대 경로인 ../를 사용하여 메인 부모 디렉토리로 가게 하고, 그리고 그 아래에 renders 디렉토리를 지정했습니다. 그리고 내 파일들에 대해서는 테이크 이름과 프로젝트 이름을 기반으로 파일 이름이 생성되도록 할 것입니다. 그러면 프로젝트 이름은 매번 내가 save increment 할 때마다 바뀌기 때문에 항상 어떤 버젼의 프로젝트가 렌더링되는지를 알 수 있습니다. 자 이번에는 멀티-패스 경로를 살펴보겠습니다. 여기 동일한 renders 폴더로 들어갈 것이고, 그 다음에 $take_$prj가 옵니다. 하지만, 그 다음에 디렉토리를 만들 생각이기 때문에 마지막에 슬래시를 추가합니다. 이제 진짜 유용한 부분으로 그 다음에 $userpass 토큰을 사용할 것인데, 이는 여기 팝업으로 가서 리스트에서 current pass name(user defined)를 선택합니다. 팝업에는 current pass name과 current pass name(user defined)가 있는데, 바로 이 user defined pass name이 아주 유용합니다. 왜냐하면, 사용자로 하여금 여기에 자신이 정의해 놓은 커스텀 패스 이름들을 사용할 수 있기 때문입니다. 여기를 보면 내가 만들어 놓은 모든 오브젝트 버퍼들이 있는데, 추가로 하나를 더 만들어 그룹 ID를 1로 하고 더블 클릭하여 이름을 Trails로 변경합니다. 그리고 순서를 변경하여 이를 맨 위로 올리고 이들 각각의 오브젝트 버퍼들은 실제 파일 이름 안에 포함될 것입니다. 이제 한 스텝 더 나아가서 서브디렉토리를 만들겠습니다. 이제 또 다시 이 뒤에 슬래시를 추가하고 파일에 대한 원하는 이름을 추가할 것입니다. 여기서는 먼저 $take 언더바 그리고 $prj를 입력합니다. 일단 토큰에 익숙해지면 직접 토큰을 파일 경로에 입력할 수 있으며 구태여 팝업으로 가서 이들을 선택하여 추가할 필요는 없습니다. 여기 아래에서, 나는 멀티-레이어 파일을 사용하지 않을 것이며 각각의 패스들을 별개의 파일로 저장할 것입니다. 따라서, layer name as suffix의 체크를 끄고, 대신 user-defined layer name을 사용할 것입니다. 이는 내가 이미 설정해 놓은 커스텀 레이어 이름으로서 테이크와 프로젝트 이름과 함께 이 커스텀 레이어 이름도 파일 이름에 나타나게 됩니다. 자 이제 렌더링을 하고 파일 구조가 어떻게 되어있는지를 살펴보겠습니다. 이를 위해 renders 폴더로 가보겠습니다. 여기를 보면 정상적으로 렌더링된 이미지가 있는 데 파일 이름을 보면 테이크 이름과 프로젝트 파일 이름, 그리고 프레임 넘버가 파일 이름에 들어있습니다. 그리고 폴더가 하나 생성되어있는 데, 폴더 이름은 테이크 이름과 프로젝트 이름으로 되어있습니다. 바로 이 폴더에 모든 패스들이 들어있습니다. 이 폴더 안에는 각각의 패스에 대한 개별 폴더들이 들어있습니다. 이 폴더들 중에서 Trail 패스로 가면, Trails 패스를 위하여 Trails로 명명된 오브젝트 버퍼가 있습니다. 특히 모든 프레임들이 렌더링되어 수많은 개별 파일들이 계층적으로 더욱 정리되어 저장되므로 이 기능은 매우 중요한 기능입니다. 이는 토큰의 한가지 예이고, 또 다른 예를 살펴보겠습니다. 보통 파이프라인에서 우리는 매일 매일 그날의 작업들을 폴더에 저장하는 데, C4D 파일이 있는 곳에서 여러 레벨에 걸쳐 폴더들이 있는데, 위로는 촬영된 샷들과 메인 프로젝트 폴더들까지 다양합니다. 그리고 아래로 가면 작업된 내용들과 매일 매일의 작업들이 있습니다. 그리고 그 아래에 각 날짜에 대한 폴더가 있고 그 날에 작업한 내용들은 그 날짜의 폴더에 저장합니다. 이제 Cinema 4D로 돌아가서 보면 차일드 렌더 세팅 설정이 있는데, 모든 프레임들을 하드웨어 렌더하도록 설정되어있어 빠르게 데일리 렌더링을 얻을 수 있습니다. 그리고 여기 저장 경로를 설정해 놓았는데, 여기서 나는 .. / 를 여러번 사용하여 이 메인 폴더에 백업을 해두고 그 아래 Deliverables 폴더의 dailies 폴더로 갑니다. 하지만 여기서 우리는 작은 문제에 봉착하게 되는데, 우리는 실질적으로 날짜를 생성할 수 있어야 하는 데, 날짜는 C4D에서 기본으로 제공되는 토큰이 아닙니다. 하지만 토큰은 Cinema 4D API를 통해서 확장 가능합니다. 따라서, 여러분의 파이프라인에 적합한 토큰들을 추가할 수 있습니다. 우리도 이미 Cineversity를 통하여 배포될 CV Tokens라는 이름의 플러그인을 만들기 시작하였으며, 우리에게 필요한 몇가지 토큰들을 생성하여 두었습니다. 이제 이 플러그인을 플러그 인 폴더에 드롭하고 Cinema 4D를 재시작합니다. 그런 다음, 우리가 작업하던 파일을 다시 오픈합니다. 그러면 여러분은 여기 이 드롭 다운에서 추가적인 옵션들을 보실 수 있는데, OS computer name, OS username, 프로젝트 설정에서 지정된 작성자 이름(Author name) 뿐 아니라 날짜, 월, 2자리 연도와 4자리 연도를 보실 수 있습니다. 이 플러그인을 다운로드하실 때 쯤에는 다른 몇가지 토큰들이 더 추가되어있을 것입니다. 이제 여기서 오늘 날짜를 기반으로 커스텀 스트링을 생성할 수 있습니다. 이제 렌더링을 시작하면 하드웨어 렌더링이 시작되고, 다시 프로젝트 폴더로 가보면, 오늘 날짜로 된 새로운 폴더를 보실 수 있습니다. 또한 새로운 파일이 생성되어있는데 이 파일의 이름은 현재 프로젝트 파일 이름, 현재 테이크 이름 그리고 프로젝트 설정에서 author 필드에 위치시킨 제 이니셜으로 구성되어있습니다. 여러분은 아마도 이러한 디폴트 파일 이름 템플릿이 모든 파일의 일부분이 되어 파일을 생성할때마다 적용되기를 원하실 것입니다. 이렇게 설정하는 몇가지 방법이 있습니다. 가장 손쉬운 방법은 new.c4d 파일을 사용하는 것입니다. 먼저 우리가 만든 여기 이 렌더 설정을 복사한 다음, 새로운 씬 파일(new.c4d)를 생성하여 이 씬의 렌더 설정안에 붙여넣기 합니다. 그런 다음, 이 씬 작업을 위하여 특별히 만든 여러 가지들 즉 개별 패스 이름, 글로벌 일루미네이션, 렌즈 디스토션등을 제거합니다. 그런 다음에 우리가 할일은 이 씬 파일을 데스크탑에 new.c4d로 저장하는 것입니다. 그 다음 할 일은 open preferences folder 버튼을 사용하여 환경 설정(preference) 폴더를 오픈합니다. 이제 다시 데스크탑으로 돌아가서 new.c4d를 복사하여 preference 폴더에 붙여넣기합니다. 그러면 여러분이 새로운 씬을 생성할 때마다, 이 저장 경로가 기본으로 삽입되어 나타날 것입니다. 만일 좀 더 유연한 추가적인 파일 이름 템플릿들을 원한다면 새로운 렌더 설정을 만든 다음, 여기로 가서 렌더 프리셋에서 변경하고자하는 아이템들을 복사합니다. 예를 들어, 여기 이 파일 이름 템플릿과 멀티-패스에 대한 파일 이름 템플릿을 복사하여 새로운 렌더 설정에 붙여넣기 합니다. 그런 다음, 새로 만든 렌더 설정을 선택하고 Render Setting... 버튼을 눌러 아래로로 가서 Save Difference Preset을 선택합니다. 그리고 여기 이름 대화창에서 Fn-RenderFolder를 이 특정 프리셋의 이름으로 입력합니다. 그러면 이 프리셋은 컨텐츠 브라우져에 저장되어, 언제든지 손쉽게 apply difference preset 옵션을 통하여 원하는 렌더 설정에 적용할 수 있습니다. 이는 매우 유용한 것으로서 특히 서로 다른 유형의 프로젝트에 여러 개의 서로 다른 템플릿들을 가질 수 있는 유연성을 제공합니다. 이제 여러분이 대규모 스튜디오나 아니면 일인 팀으로 작업하던 관계없이 여러분의 렌더 파일들을 효율적으로 관리할 수 있는 실질적으로 유용한 유연한 시스템을 구축하실 수 있습니다.
Resume Auto-Scroll?