Unreal Development Kit Game Design Cookbook
上QQ阅读APP看书,第一时间看更新

Deciding on your preferences

UDK offers some tweaks to customize the user experience. We'll explore some of the ways to alter the default settings. There are two ways to set preferences. One is the Preferences menu, and the other is the View menu. If you choose to use a version of UDK prior to June 2011, all preferences appear in the View menu. This recipe details some of the more immediately useful available settings.

Getting ready

Load one of the default map presets. Also, have a read through the UDN interface information at http://udn.epicgames.com/Three/MainEditorMenuBar.html.

How to do it...

  1. Click on the Preferences menu, and turn on Load Simple Map on Startup. This toggle will prevent or allow skipping through the startup menu to immediately load a set map.
    How to do it...
  2. The map which is already loaded (which ought to be a .UMAP as was discussed in the previous recipe) is defined in the configuration file C:\UDK\~\UDKGame\Config\DefaultEditorUDK.ini in the lines at the end:
    [UnrealEd.SimpleMap]
    SimpleMapName=..\..\Engine\Content\Maps\Templates\Template_MidDay.umap
  3. If you are certain you're developing for mobile you can set Preferences | Always Optimize Content for Mobile which helps to ensure compiled materials and meshes are maintained within platform limitations. View more information at: http://udn.epicgames.com/Three/MigratingMobileJune2011.html. The setting enables ImgTec's PowerVR PVRTC compression when building lighting, which is a lossy, fixed rate texture compression used because mobile devices don't support DXT (DirectX textures). What UDK actually does is cache both DXT and PVRTC compression of the texture and dumps one or the other when cooking the game depending on the destination format (PC or iOS).
  4. Textures for iOS should be larger than 16 x 16 pixels. iOS doesn't support textures that do not have their width-height resolution in powers of two, so what UDK does under the hood is automatically stretch any you use so they'll work. Lightmaps, the scene lighting baked into textures during a build, are often not square so these may need special attention. This command is already set in UDK's configuration in C:\UDK\~\UDKGame\Config\UDKLightmass.INI:
    [DevOptions.StaticLighting]
    bRepackLightAndShadowMapTextures=True
  5. If you want to alter this state, just add the suffix nopvrtclightmaps to the line in the Target: field of your editor shortcut before launching UDK. If you're just starting out then you won't need to, but it's good to understand how it works.
  6. Moving on, a useful preference to set comes from the fact that clicking on BSP geometry in the perspective view selects the surface under the cursor, not the entire BSP model. In Preferences | Clicking BSP Selects Brush, you can reverse this. Remember, click Ctrl + Shift on a BSP by default selects the entire brush or you can just select it in an orthographic view instead. You can make the BSP brush show shaded faces when selected by going to View | Draw Brush Marker Polys. Try this out, and check the effect of it being on and off.
  7. Preferences | Perspective viewports default to real-time means that when you launch the editor, your perspective view will display running particle systems and animated content in materials and so on. This can use considerable memory in large scenes. To toggle Real Time display, press Ctrl + R or click the joystick icon [ How to do it... ] in the icons row above the desired viewport. You can test this in the June 2011 version or later straight away if you've loaded one of the templates that include a sky. With real-time playback enabled you'll see clouds moving. With it off, you won't.
  8. Some designers like to see a visual guide to what is selected. You can go to Preferences | Highlight Selected with Borders to enable white bounding boxes which face the camera and surround each object in a selection. For better depth perception you can tick Preferences | Enable Wireframe halos so that objects further away get fuzzy edges. Also, you can tick Preferences | Highlight objects under the mouse cursor so as you mouse over objects it identifies one over another in a busy scene. The effect is more obvious in some shading modes (like wireframe or unlit) than others (lit or detail lighting).
  9. If you like to split up your views, you can disable the default Preferences | Resize Top and Bottom Viewports Together. This means that when you drag a view, it is free from the others. By default when you zoom and pan an orthographic view the others follow it. This can also be disabled, through Preferences | Link Orthographic Viewport Movement and will make your viewport response a little more like 3ds Max. A related feature which you may find disconcerting if you use another 3D application is that UDK's default view panning is to move the camera in the direction of the drag (which sends the scene apparently panning away from the drag direction). This can be inverted to a generic style of map panning where the scene stays fixed relative to the cursor during the drag. Preferences | Grab and Drag to Scroll Ortho Cameras sets this.
  10. If you want to work full screen, press F11 or go to View | Fullscreen. This fits the editor to the maximum available space. If you want to switch from the default view 2 x 2 split to a single view, each view has an icon [ How to do it... ] for this on the extreme upper right -hand corner of the view. When maximized, it restores down. If you have multiple monitors it can be useful to Tear Off additional views by going to View | New Floating Viewport and choosing between Perspective or an Orthographic view. Each view (and the Content Browser) has icons for this [ How to do it... ].
  11. In versions of UDK from June 2011 on, you can Group actors to make handling them in the view easier. Go to View | Allow Group Selection and tick it. Refer to http://udn.epicgames.com/Three/ActorGrouping.html for further information on grouping. All grouping is controlled by having a selection of objects then right-clicking on them and choosing Group Actors, or Groups if the objects are already grouped.
    How to do it...