Part 1: Smart Importer
This section describes the creation of a new Solution and how to proceed importing IVI_Sample.psd file via Smart Importer. Specially about how to assign Controls to each image parts.
Create a new Solution
The first step is to create a new Solution for Scene Composer.
Double-click on the Empty template under Samples and Templates.
* Selecting “Empty” template creates a new solution based on the template.

Activate the "Render Targets" panel and select the "Display". Change the display's resolution as shown below.
- X Resolution 640
- Y Resolution 960

Click the "Save solution..." icon in the menu bar.

A dialog box will appear, allowing you to select an appropriate location. Input any name as a solution file name.
Smart Importer
In our example we will use the Smart Importer to import a Photoshop .psd file. Smart Importer will analyze the PSD file and try to identify which controls are included in the picture. After some configuration effort you can directly create CGI Studio Controls wherever it is applicable.
Choose "Import > Smart Importer", "From Local File...". This will open the Windows Open dialog. Select the following Photoshop file and press "Open":
<cgi-studio-root>\cgi_studio_content\2D\PSD\IVI_Sample.psd

The photoshop file will be loaded and the Smart Importer dialog box will appear.

First, click on the left-most triangle button to extend the Header layer tree. Check the checkbox to the left of the Header and make sure that all items under the Header are checked. Click on DigitalClock in the tree. From the Control List, click on the Apply button to the right side of the DigitalClock control.

Click on “Basic Properties” tab and check “ShowFull24Hours” checkbox. This will make the display show 24 hours. Similarly, uncheck “ShowSeconds”. This will prevent the seconds from being displayed.

If a Control is set and imported with layers and properties that do not match when imported, the original group will not reflect the Control, and another new group node with Control applied will be added.
Following the previous operation, similar operations are performed on each item.
Header Tree

| Target Layer | Control List |
| TellTale_Error | Tell Tale |
Menu_button tree


| Target Layer | Control List | Basic Properties | |
| TextButton_Car | TextButton | Text | (blank space) |
| TextButton_Navigation | TextButton | Text | (blank space) |
| TextButton_Phone | TextButton | Text | (blank space) |
| TextButton_Music | TextButton | Text | (blank space) |
Music Tree


| Target Layer | Control List | Basic Properties | |
| Slider |
Slider |
Value | 9000 |
| Minimum | 0 | ||
| Maximum | 18000 | ||


| Target Layer | Control List | Basic Properties | |
| DigitalClock_Time | DigitalClock | ShowFull24Hours | enable |
| ShowSeconds | disable | ||


| Target Layer | Control List | Basic Properties | |
| DigitalClock_Total_Time | DigitalClock | Time | 18000 |
| ShowFull24Hours | enable | ||
| ShowSeconds | disable | ||


| Target Layer | Control List | Basic Properties |
|
|---|---|---|---|
| CheckBox | CheckBox | Text | (blank space) |
Comfort Tree


| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Left | TextValue_Temperature | Text Value | Value | 23 |
| FormatText | %02d | |||

| Target Layer | Control List | |
|---|---|---|
| Seat_Left | Icon_Button_+ | IconButton |
| Icon_Button_- | IconButton | |


| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Left | ProgressBar | ProgressBar | Value | 23 |
| Minimum | 16 | |||
| Maximum | 28 | |||


| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Left | SeatHeating_Left(*) | CheckBox | Text | (blank space) |
(*)The image is treated like a checkbox. So there is no additional rectangle for that.
| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Right | TextValue_Temperature | Text Value | Value | 23 |
| FormatText | %02d | |||
| Target Layer | Control List | |
|---|---|---|
| Seat_Right | Icon_Button_+ | IconButton |
| Icon_Button_- | ||
| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Right | ProgressBar | ProgressBar | Value | 23 |
| Minimum | 16 | |||
| Maximum | 28 | |||
| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Seat_Right | SeatHeating_Right(*) | CheckBox | Text | (blank space) |
(*)The image is treated like a checkbox. So there is no additional rectangle for that.

| Target Layer | Control List | |
|---|---|---|
| Fan | slider | slider |


| Target Layer | Control List | Basic Properties | ||
|---|---|---|---|---|
| Air | RadioButton_Outside Air | RadioButton | Text | (blank space) |
| RadioButton_Inside Air | RadioButton | Text | (blank space) | |
| RadioButton_AUTO | RadioButton | Text | (blank space) | |

| Target Layer | Configuration details | |
|---|---|---|
| Air | RadioButton_Outside Air/Control_Background | disable |
| RadioButton_Inside Air/Control_Background | disable | |
| RadioButton_AUTO Air/Control_Background | disable | |
Navigation Tree

Since this tree is unchecked, check it. There is no need to apply the control in ControlList since it only imports Navigation image. After completing the settings up to this point, press OK button to perform the import. Now you can import while setting controls on each layer. On Scene Tree, you can confirm that the settings made in Smart Importer have been applied at the time of import.

After you finish importing, select Navigation below Navigation group in Scene Tree and unselect "Node Rendering Enabled”. Then this element will be not displayed by default.