source: GTP/trunk/App/Demos/Illum/Shark3D/version164x12u/IllumDemo/win32_run.cfg @ 2196

Revision 2196, 41.1 KB checked in by szirmay, 17 years ago (diff)
Line 
1///////////////////////////////////////////////////////////////////////////////
2//
3//      ##  ######
4//       ######  ###
5//  ## ###############        Shark 3D Engine (www.shark3d.com)
6//   ########## # # #
7//    ########                Copyright (c) 1996-2006 Spinor GmbH.
8//   ######### # # #          All rights reserved.
9//  ##   ##########
10//      ##
11//
12///////////////////////////////////////////////////////////////////////////////
13
14// This file configures the Shark 3D runtime engine.
15//
16// File syntax: Snake File Format, see documentation for details.
17// Each field has a name and none, one or more values of type integer,
18// float, string or chunk.
19//   //         = Comment until end of line.
20//   /* xxx */  = Long comment
21//   { xxx }    = Chunk containing fields again.
22//   &          = Concat strings (to split strings over more than one line).
23//
24// File content: See comments below and source code of the player.
25// - Keybord mapping see near the end of this file.
26// - The startup resource of the project is defined in the entry "startup".
27
28///////////////////////////////////////////////////////////////////////////////
29// Configuration parameters:
30
31// Avoid storing information
32// needed for reporting notes and error messages.
33// Especially avoid storing info strings.
34// This is useful to save memory on consoles.
35// Warning! This makes error messages basically useless!
36// Only set this parameter to 1 for final builds(!) on consoles(!).
37bare 0
38
39// Automatically save configuration changes back into this file.
40// Warning! Enabling destroys all formating and deletes all comments.
41save 0
42
43///////////////////////////////////////////////////////////////////////////////
44// Logging parameters:
45
46// Print into standard out:
47stdout 1
48stderr 1
49
50// Flush after writing a line to stdandard out:
51stdout_line_flush 1
52stderr_line_flush 1
53
54// File name and format the main message handler logs into.
55// In the file path, the character "$" is replaced by the current time stamp.
56// Use the "$" character if you want a separate log file per run.
57logfile_format "utf8"
58logfile_path "log_main.log"
59
60// If the log file is larger than the size limit, rename the previous log file
61// into the old log file name and start a new log file.
62// This mechanism can be used to avoid an unlimited growing log file.
63// The previous old log file is deleted.
64// The the file path, the character "$" is replaced by the current time stamp.
65logfile_size_limit 20000000
66logfile_old_path "log_main_old.log"
67
68// If enabled, flush the log stream after every line.
69// This option may help to analyse crashes.
70// Warning! This slows down the engine noticeable!
71// Should be enabled only temporarily for debuggung purposes!
72logfile_line_flush 0
73
74// If enabled, send main logging also to the debugger interface.
75// Warning! This costs performance even if no debugger is connected!
76debugout 1
77
78// If enabled, open a message box for errors.
79error_msg_box 0
80
81// If enabled, open a message box on fatal errors.
82fatal_error_msg_box 1
83
84// Format for file positions:
85textstream_pos_templ ""
86
87// If enabled, in case of an error immediately abort the application.
88instant_abort_after_error 0
89
90// If enabled, after an error abort the application at a suitable time.
91opportune_abort_after_error 0
92
93// File name to log debugging output to.
94//syslog_path "log_dbg.log"
95
96// File name to redirect stdout/stderr to.
97//redirect_stdout_path "log_out.log"
98//redirect_stderr_path "log_err.log"
99
100///////////////////////////////////////////////////////////////////////////////
101// Time parameters:
102
103// Maximal time step of each iteration.
104max_deltatime 0.2
105
106// Delta time used for every frame independent of the real time.
107//exact_deltatime 0.0
108
109// Time in seconds which the program sleeps each frame.
110// This can be used for example to avoid that a dedicated server
111// takes all system power.
112sleeptime 0.0
113
114// Minimal frame time in seconds.
115// If the frame (including the sleep time) would be less,
116// the process sleeps for the rest of this time.
117min_frmtime 0.0
118
119///////////////////////////////////////////////////////////////////////////////
120// Application specific parameters:
121
122app
123{
124    max
125    {
126        unused_time_limit 2.0
127        unused_sleep_time 0.2
128    }
129}
130
131///////////////////////////////////////////////////////////////////////////////
132// Modules:
133
134// List of DLLs containing components to be loaded by the player.
135// Each DLL factory is registered under the specified name.
136// For example, if "shark3d_kit_base.dll" is registerd
137// under the name "kit_base", an actor ident "kit_base.group" means
138// to search the component class "group" in the DLL "shark3d_kit_base.dll".
139modules
140// Driver modules:
141{
142    name "drv_winctx"
143    path "shark3d_drv_winctx.dll"
144}
145{
146    name "drv_gfxselect"
147    path "shark3d_drv_gfxselect.dll"
148}
149{
150    name "drv_gfxverify"
151    path "shark3d_drv_gfxverify.dll"
152}
153{
154    name "drv_gfxtargetrect"
155    path "shark3d_drv_gfxtargetrect.dll"
156}
157{
158    name "drv_gfxprotect"
159    path "shark3d_drv_gfxprotect.dll"
160}
161{
162    name "drv_opengl"
163    path "shark3d_drv_opengl.dll"
164}
165{
166    name "drv_openal"
167    path "shark3d_drv_openal.dll"
168}
169{
170    name "drv_d3d9"
171    path "shark3d_drv_d3d9.dll"
172}
173{
174    name "drv_dsnd"
175    path "shark3d_drv_dsnd.dll"
176}
177{
178    name "drv_wav"
179    path "shark3d_drv_wav.dll"
180}
181{
182    name "drv_stdinput"
183    path "shark3d_drv_stdinput.dll"
184}
185{
186    name "drv_wininput"
187    path "shark3d_drv_wininput.dll"
188}
189{
190    name "drv_dinput"
191    path "shark3d_drv_dinput.dll"
192}
193{
194    name "drv_netcompr"
195    path "shark3d_drv_netcompr.dll"
196}
197{
198    name "drv_tcp"
199    path "shark3d_drv_tcp.dll"
200}
201{
202    name "drv_udp"
203    path "shark3d_drv_udp.dll"
204}
205{
206    name "drv_commsgeval"
207    path "shark3d_drv_commsgeval.dll"
208}
209{
210    name "drv_stdres"
211    path "shark3d_drv_stdres.dll"
212}
213{
214    name "drv_packres"
215    path "shark3d_drv_packres.dll"
216}
217{
218    name "drv_comres"
219    path "shark3d_drv_comres.dll"
220}
221{
222    name "drv_stdbitmap"
223    path "shark3d_drv_stdbitmap.dll"
224}
225{
226    name "drv_plibbitmap"
227    path "shark3d_drv_plibbitmap.dll"
228}
229{
230    name "drv_dshowvid"
231    path "shark3d_drv_dshowvid.dll"
232}
233{
234    name "drv_univprog_std"
235    path "shark3d_drv_univprog_std.dll"
236}
237// Engine foundation modules:
238{
239    name "eng_base"
240    path "shark3d_eng_base.dll"
241}
242{
243    name "eng_pos_std"
244    path "shark3d_eng_pos_std.dll"
245}
246{
247    name "eng_shader_std"
248    path "shark3d_eng_shader_std.dll"
249}
250{
251    name "eng_shader_special"
252    path "shark3d_eng_shader_special.dll"
253}
254{
255    name "eng_shader_shvol"
256    path "shark3d_eng_shader_shvol.dll"
257}
258{
259    name "eng_model_std"
260    path "shark3d_eng_model_std.dll"
261}
262{
263    name "eng_model_special"
264    path "shark3d_eng_model_special.dll"
265}
266{
267    name "eng_geo_std"
268    path "shark3d_eng_geo_std.dll"
269}
270{
271    name "eng_visib_pvs"
272    path "shark3d_eng_visib_pvs.dll"
273}
274{
275    name "eng_phys_std"
276    path "shark3d_eng_phys_std.dll"
277}
278{
279    name "eng_sensor_std"
280    path "shark3d_eng_sensor_std.dll"
281}
282{
283    name "eng_font_std"
284    path "shark3d_eng_font_std.dll"
285}
286{
287    name "eng_tex_std"
288    path "shark3d_eng_tex_std.dll"
289}
290{
291    name "eng_wave_std"
292    path "shark3d_eng_wave_std.dll"
293}
294// Framework modules:
295{
296    name "kit_base"
297    path "shark3d_kit_base.dll"
298}
299{
300    name "kit_io"
301    path "shark3d_kit_io.dll"
302}
303{
304    name "kit_engbase"
305    path "shark3d_kit_engbase.dll"
306}
307{
308    name "kit_engobj"
309    path "shark3d_kit_engobj.dll"
310}
311{
312    name "kit_special"
313    path "shark3d_kit_special.dll"
314}
315{
316    name "kit_com"
317    path "shark3d_kit_com.dll"
318}
319{
320    name "kit_snk"
321    path "shark3d_kit_snk.dll"
322}
323{
324    name "kit_perch"
325    path "shark3d_kit_perch.dll"
326}
327{
328    name "gtp_shader"
329    path "bin/win32_vc7x1/debug/shark3d_gtp_shader.dll"
330
331}
332// Java module:
333{
334    name "kit_java"
335    path "shark3d_kit_java.dll"
336    param
337    {
338        // Disable Java, create only dummy script actors.
339        disable 0
340
341        // Invoke JVM with debug option
342        // (needs tools.jar from JDK in classpath)
343        debug 0
344
345        // Enable just-in-time compiler.
346        enable_jit 0
347
348        // Run in sandbox:
349        sandbox 0
350
351        // Path for finding class files:
352        classpathes
353            // Java-module Java-classes when using the SDK player exe:
354            "[appdir]..\\..\\..\\bin\\java"
355            // Java-module Java-classes when using an other exe (e.g. Max)
356            "[appdir]shark3d\\bin\\java"
357            // Project-specific resources:
358            "bin\\res"
359
360        // Java library loading information:
361        libname ""
362        registry_key "Software\\JavaSoft\\Java Runtime Environment\\1.4"
363        registry_val "RuntimeLib"
364        bootclasspath ""
365    }
366}
367
368///////////////////////////////////////////////////////////////////////////////
369// Log into TCP server:
370
371msgeval_ident "drv_commsgeval.msgeval"
372msgeval_param
373{
374    env "env"
375    addrport_conv "addr_conv"
376    addrport "[comaddrport]"
377}
378
379///////////////////////////////////////////////////////////////////////////////
380// Resource manager:
381
382resmgr_ident "drv_stdres.resmgr_dispatch"
383resmgr_param
384{
385    env "env"
386    log_enabled 0
387    entry_array
388    {
389        prefix ""
390        ident "drv_stdres.resmgr_select"
391        param
392        {
393            env "env"
394            // Select a resource manager:
395            // "normal" -> Reading from file and using DRU.
396            // "packfile" -> Reading from a packfile.
397            select "normal"
398           
399            entry_array
400            {
401                // Default: Advanced file resource manager.
402                name "normal"
403                ident "drv_comres.resmgr"
404                param
405                {
406                    env "env"
407                    addrport_conv "addr_conv"
408                    addrport "[comaddrport]"
409                    ignore_socket_errors 1
410                    com_buf_size 0
411                    request_timeout 0.0
412                    request_waitsleep 0.0
413                    child_ident "drv_stdres.resmgr_file"
414                    child_param
415                    {
416                        env "env"
417                        // Prefix added to the resource name for
418                        // infos and errors:
419                        name_prefix "res:"
420                        // Location to load the files from:
421                        ref_dir "[homedir]bin/res/"
422                        // Convertor for the ref_dir, for replacing
423                        // placeholders.
424                        ref_dir_conv "path_conv"
425                        // Don't allow resource names to start
426                        // with ".." or "/":
427                        allow_any_path 0
428                        // Case sensitive file name on Win32 platform.
429                        // Should be enabled to avoid problems
430                        // with non-Win32 platforms, packfiles or DRU.
431                        non_strict_path 0
432                        // Cache size not too large to avoid stuttering:
433                        file_cache_size 4096
434                        // Log all file accesses:
435                        log_enabled 1
436                    }
437                }
438            }
439            {
440                name "packfile"
441                ident "drv_packres.resmgr_pack"
442                param
443                {
444                    env "env"
445                    child_ident "drv_stdres.resmgr_file"
446                    child_param
447                    {
448                        env "env"
449                        name_prefix ""
450                        ref_dir ""
451                        ref_dir_conv ""
452                        allow_any_path 0
453                        non_strict_path 0
454                        file_cache_size 4096
455                        log_enabled 1
456                    }
457                    entry_array
458                    {
459                        prefix ""
460                        pack_res "packfile.s3d_pack"
461                        name_prefix "res:"
462                    }
463                    journal_file_path "packfile.s3d_packjournal"
464                    journal_file_format "utf8"
465                    index_cache_size 4096
466                    res_cache_size 4096
467                }
468            }
469        }
470    }
471    {
472        // Prefix "file:": Open as file.
473        prefix "file:"
474        ident "drv_stdres.resmgr_file"
475        param
476        {
477            env "env"
478            ref_dir ""
479            ref_dir_conv ""
480            allow_any_path 1
481            non_strict_path 0
482            file_cache_size 4096    // Not too large to avoid stuttering
483            log_enabled 1
484        }
485    }
486}
487
488///////////////////////////////////////////////////////////////////////////////
489// Startup resource:
490
491// Name of the startup resource.
492// This resources describes the first actor created by the player.
493startup "main/actor/main.s3d_actor_run"
494
495///////////////////////////////////////////////////////////////////////////////
496// Application configuration:
497
498// The parameters of the following chunk are evaluated by the application.
499//
500// All these parameter can be also changed by the application.
501// However, depending on the parameter it may have only effect
502// after restarting the application.
503// Other parameters may take effect by re-initializing a part
504// of the runtime system. For example, the "reload_io" command
505// re-initializes input, graphics, and sound.
506//
507cfg
508{
509    // Network engine.
510    network
511    {
512        // Enable/disable networking.
513        enabled 1
514
515        // Component type.
516        ident "drv_netcompr.neteng"
517        param
518        {
519            env "env"
520           
521            // Log runtime network statistic in message handler:
522            log_enabled 0
523
524            // Compression level (0 for disabling)
525            compr_level 9
526
527            // Child driver TCP:
528            child_ident "drv_tcp.neteng"
529            child_param
530            {
531                env "env"
532               
533                // Send buffer ring size.
534                buffer_size 65536
535
536                // Log runtime network statistic in message handler:
537                log_enabled 0
538
539                // Enable/disable Nagle algorithm.
540                no_delay 0
541
542                // When connecting, try "connect_retry_count" times
543                // with a pause of "connect_retry_delay" seconds
544                // between each try.
545                //connect_retry_count 10
546                //connect_retry_delay 1.0
547            }
548
549            // Child driver UDP:
550            /*
551            child_ident "drv_udp.neteng"
552            child_param
553            {
554                // Maximal packet size. Larger data blocks are divided.
555                // Smaller packet sizes may give smoother transfer rates.
556                max_msg_size 256
557
558                // Timeout after which a alive ping is send if no data arrives.
559                alive_period 1.0
560
561                // Timeout after which an fatal error is generated.
562                timeout 30.0
563            }
564            */
565        }
566    }
567
568    // Server configuration.
569    server
570    {
571        // Enable/disable the server.
572        // Disable the server if you connect to a extern server.
573        enabled 1
574
575        // Port number the server is listening on.
576        // If empty, no client can connect via network.
577        addr "0.0.0.0:33300"
578    }
579
580    // Client configuration.
581    client
582    {
583        // Enable/disable the client.
584        // Disable it for a dedicated server.
585        enabled 1
586       
587        // Format: "<host>:<port>"
588        // If empty, the client is connected to a local server.
589        addr ""
590        //addr "127.0.0.1:33300"
591        //addr "192.168.0.1:33300"
592
593        // Define a extra rotation on client side,
594        // for example for cave applications.
595        extratransf
596        {
597            axis_x 0.0
598            axis_y 0.0
599            axis_z 1.0
600            degree 0.0
601            offset_x 0.0
602            offset_y 0.0
603            offset_z 0.0
604        }
605    }
606
607    // Bitmap file format drivers:
608    bitmapparser
609    {
610        ident "drv_stdbitmap.bitmapparser_dispatch"
611        param
612        {
613            env "env"
614            entry_array
615            {
616                ident "drv_stdbitmap.bitmapparser_std"
617                param
618                {
619                }
620            }
621            {
622                ident "drv_plibbitmap.bitmapparser_plib"
623                param
624                {
625                }
626            }
627        }
628    }
629   
630    // Video format drivers:
631    videoparser
632    {
633        ident "drv_dshowvid.videoparser"
634        param
635        {
636            env "env"
637            // Prefix for loading videos:
638            prefix "file://bin/res/"
639            // During two rendering frames, or if a video is not visible,
640            // then wait this time in seconds before decompressing
641            // the next frame.
642            wait_continue 1.0
643        }
644    }
645
646    // Sound file format drivers:
647    waveparser
648    {
649        ident "drv_wav.waveparser"
650        param
651        {
652        }
653    }
654
655    // IO context configuration.
656    // The context is the link between gfx-output, input and sound.
657    //
658    // These parameters may be also changed by the application,
659    // and then take effect by a "reload_io" command,
660    // see the keyboard configuration below.
661    context
662    {
663        // Component type. Empty string creates default component of DLL.
664        ident "drv_winctx.ctx"
665        param
666        {
667            env "env"
668            caption "Shark 3D"
669            // Window is always on the top:
670            topmost 0
671            // If set to one, the given size is not the client area size,
672            // but the total window size.
673            size_is_window_size 0
674            // Disable ALT-TAB and ALT-RETURN in fullsceen mode.
675            fullscreen_disable_hotkeys 1
676            // File name pattern for screenshots:
677            screenshot_filepat "shot////////.bmp"
678            // Store a screenshot each frame:
679            auto_screenshot 0
680            // Sleep time in seconds each frame if the window is deactive:
681            //deactive_sleep_time 0.0
682            deactive_sleep_time 0.05
683        }
684    }
685
686    // Graphics engine configuration.
687    //
688    // These parameters may be also changed by the application,
689    // and then take effect by a "reload_io" command,
690    // see the keyboard configuration below.
691    gfxeng
692    {
693        // 3D driver DLL. If empty, use internal factory.
694        // Select one of the following drivers:
695        // Auto detection:
696        ident "drv_gfxselect.gfxmgr"
697        param
698        {
699            env "env"
700           
701            // Driver selection:
702            // "d3d9" -> Direct3D9
703            // "opengl" -> OpenGL.
704            // Note: For OpenGL you have to compile the resources differently,
705            // see the notes in "utility/buildres/tool_prep_win32.cfg".
706            // Note: OpenGL support of v5 is not stable and not finished yet.
707            select "d3d9"
708            //select "opengl"
709           
710            entry_array
711            {
712                name "d3d9"
713                ident "drv_d3d9.gfxmgr"
714                param
715                {
716                    env "env"
717                    univprog_suppl "envcompsuppl"
718                    univprog_given_array
719                    {
720                        item "env"
721                        given_ident "env"
722                    }
723                    default_outparam
724                    {
725                        // Log all Direct3D calls. Very slow.
726                        log_dx_calls 0
727                        // Use software reference driver.
728                        ref_driver 0
729                        tripple_buffering 0
730                        force_sw_vertexbuf 0
731                        force_hw_vertexbuf 0
732                        prefer_idxbuf32 0
733                        pure_device 1
734                        // Don't preserve FPU state. May help improve
735                        // performance, but may cause fp precision problems.
736                        disable_fpu_preserve 0
737                        // Binary logarithm of the minimal texture width.
738                        // 5 -> 32 to avoid problems with NVidia drivers:
739                        min_lb_tex_width 5
740                        // Binary logarithm of the minimal texture height.
741                        // 5 -> 32 to avoid problems with NVidia drivers:
742                        min_lb_tex_height 5
743                        // Binary logarithm of the minimal volume texture
744                        // extension.
745                        min_lb_vol_tex_ext 5
746                        // Don't use dynamic VB, only static VB and UP.
747                        no_dynamic_vertexbuf 0
748                        // If enabled dummy blend weights and indices are put
749                        // into same vertexbuffer as other vertex data.
750                        // If disabled a small 16 byte application global
751                        // vertexbuffer will be used for dummy data.
752                        no_dummybone_vertexbuf 1
753                        // Use DrawIndexedPrimitiveUP() for dynamic VBs
754                        // instead of DrawIndexedPrimitive()
755                        use_draw_indexed_primitive_up 1
756                        // If non-zero, flush cmdbuffer every idxcnt
757                        idx_flush_cnt 0
758                        // If hw does not support this vertex shader version,
759                        // use sw:
760                        req_vert_shad_ver "0x0"
761                        // Use faked fullscreen mode:
762                        faked_fullscreen 0
763                        // If true d3d shader debug is possible for asm and
764                        // hlsl shaders pure_device needs to be 0 and
765                        // force_sw_vertexbuf needs to be 1 for pixelshader
766                        // debugging enable ref_driver
767                        shader_debug 0
768                        // Report creation and destruction information
769                        report_batch 0
770                        report_buf 0
771                        report_tex 0
772                        report_prog 0
773                        // compress textures that are greater than
774                        // 'min_texcompress_width' and 'min_texcompress_height'
775                        // 0 = dont override compression flag
776                        min_texcompress_width 0
777                        min_texcompress_height 0
778                        // use at most 'max_miplevels' for textures
779                        // 0 = automatic mip level count
780                        max_miplevels 0
781                        // <= 1: disable anisotropic texture filtering
782                        max_anisotropy 4
783                        // disable special nvidia depth texture
784                        nvdepthtex_enabled 0
785                        // Preload d3d textures, vertex and indexbuffers
786                        preload_resources 0
787                        // if enabled, vertprog declaration will be checked
788                        // against vertexbuffer declaration each frame.
789                        // Useful while shaderprog development.
790                        validate_prog_buf 1
791                        gamma_2x2_enabled 0
792                        srgb_tex_enabled 0
793                        srgb_write_enabled 0
794                        // Multisampling:
795                        // 0 := Auto select.
796                        // 1 := Disable multisampling
797                        // n := Selects multisample
798                        multisample 1
799                        // Enable info output for D3D PIX
800                        pix_enabled 0
801                    }
802                }
803                enum_param
804                {
805                }
806            }
807            {
808                name "opengl"
809                ident "drv_opengl.gfxmgr"
810                param
811                {
812                    env "env"
813                    univprog_suppl "envcompsuppl"
814                    univprog_given_array
815                    {
816                        item "env"
817                        given_ident "env"
818                    }
819                    default_outparam
820                    {
821                        // Disable OpenGL extensions by the combination of the
822                        // lower-case renderer string and lower-case extension
823                        // name:
824                        // "<lower-case-renderer>@<lower-case-extension>"
825                        forbid_pat ""
826                                //& "|*geforce*@gl_arb_vertex_buffer_object"
827                                & "|*@gl_ext_compiled_vertex_array"
828                                & "|*radeon 9000*@gl_arb_vertex_buffer_object"
829                                & "|*radeon 9000*@//display_list"
830                        // <= 1: disable anisotropic texture filtering
831                        max_anisotropy 4
832                    }
833                }
834                enum_param
835                {
836                }
837            }
838        }
839        enum_param
840        {
841        }
842        enum_enabled 1     // Write fullscreen modes into log.
843    }
844   
845    // Graphics output configuration.
846    //
847    // These parameters may be also changed by the application,
848    // and then take effect by a "reload_io" command,
849    // see the keyboard configuration below.
850    gfxout
851    {
852        // Display device. Empty string for default device.
853        device ""
854
855        // Window position, use -1 for default window position
856        left 0
857        top 0
858        // Resolution and color depth:
859        width 640
860        height 480
861        //width 1024
862        //height 768
863        depth 32
864        frequency 0
865        gamma 1.0 1.0 1.0
866        fullscreen 0
867        nostencil 0             // Don't allocate a stencil buffer.
868        nobatch 0               // Don't use batch objects (e.g. display lists)
869
870        // Other graphics parameter:
871        reportinfo 0            // Report driver allocations (textures etc.).
872        quality 0               // Prefer rendering quality instead of speed.
873        software 0              // Use software emulation.
874        singlebuffer 0          // Don't use double-buffering.
875        synch 0                 // Wait for vertical refresh.
876        noextensions 0          // Don't use API extensions (e.g. OpenGL ext.)
877        abort_if_no_gfxout 1
878    }
879
880    // 3D projection information:
881    //
882    // These parameters may be also changed by the application,
883    // and then take effect by a "reload_io" command,
884    // see the keyboard configuration below.
885    proj_world
886    {
887        // Define the opening angles.
888        open_x 1.0      // Slope of the left and right clipping plane.
889        open_y 0.75     // Slope of the top and bottom clipping plane.
890        //open_x 1.119     // Slope of the left and right clipping plane.
891        //open_y 0.629     // Slope of the top and bottom clipping plane.
892        center_x 0.0
893        center_y 0.0
894    }
895    proj_display
896    {
897        // Define the opening angles.
898        open_x 1.0      // Size of the left and right clipping plane.
899        open_y 0.75     // Size of the top and bottom clipping plane.
900        //open_x 1.119     // Slope of the left and right clipping plane.
901        //open_y 0.629     // Slope of the top and bottom clipping plane.
902        center_x 0.0
903        center_y 0.0
904    }
905
906    // Stereo rendering parameters:
907    eyedist
908    {
909        world 0.1       // World eye disteance for stereo rendering.
910        display 0.1     // Display eye distance for stereo rendering.
911    }
912
913    // 3D gfxport configuration:
914    gfxport
915    {
916        // Other gfxport parameters:
917        cull_pix 10.0           // Minimal object screen size for culling
918        mesh_pix 5.0            // Minimal geometry screen presision
919        visib_mesh_pix 5.0      // Geom. scr. prec. for glow visib. test
920       
921        // Debugging parameters:
922        texaux_inspect_scale_x 0.0
923        texaux_inspect_scale_y 0.0
924        //texaux_inspect_scale_x 0.05 // Debug output of rendertargets
925        //texaux_inspect_scale_y 0.05
926    }
927
928    // Other view options:
929    //
930    // These parameters may be also changed by the application,
931    // and then take effect by a "reload_io" command,
932    // see the keyboard configuration below.
933    view
934    {
935        // Shader system: If the batches are static,
936        // don't evaluate the mesh data every frame anymore.
937        economise 1
938        // Shader system: If the mesh data is not needed anymore,
939        // reduce the model:
940        reduce 1
941    }
942
943    // Sound configuration.
944    //
945    // These parameters may be also changed by the application,
946    // and then take effect by a "reload_io" command,
947    // see the keyboard configuration below.
948    snd
949    {
950        // Enable/disable sound.
951        enabled 1
952
953        // Component type. Empty string creates default component of DLL.
954        ident "drv_dsnd.sndeng"
955        param
956        {
957            ctx "ctx"
958           
959            // Ignore all DirectSound errors.
960            ignore_ds_errors 0
961
962            // As default, all mono wave files are played as 3d sound,
963            // and all stereo wave files are played conventionally.
964            no3d_always 0
965            no3d_pan_scale 1.0
966            no3d_back_down 0.0
967
968            // Sound device:
969            device_index 0
970
971            // DirectSound Cooperative Level.
972            //coop_level "exclusive"
973            //coop_level "normal"
974            coop_level "priority"   // Needed to set the primary buffer format
975            //coop_level "writeprimary"
976
977            // Sound buffer len used for each sound source.
978            buffer_len 2.0
979
980            // Pre-load seconds for each wave file.
981            preload_sec 0.0
982
983            // Maximal change of the volume of each sound source per frame.
984            // Setting this parameter to an non-zero value
985            // may help avoiding cracking.
986            // For example, a value of 0.1 means that a sound source is not
987            // stopped immediately, but fade down during a period
988            // of maximal 10 frames.
989            max_volume_change_per_frame 0.1
990
991            // Requested format for the primary buffer:
992            // If a value is null, the current value is kept.
993            primary_bits_per_sample 16
994            primary_channels 2
995            primary_samples_per_sec 44100
996
997            // Requested format for wave files since some formats give
998            // a ugly performance on some sound cards.
999            // If a value is 0, a wave file may have any value,
1000            // but the sound cards must convert on the fly.
1001            wave_bits_per_sample 16
1002            wave_channels 1
1003            wave_samples_per_sec 44100
1004
1005            // Number of sound buffers to reserve at initialization:
1006            wave_buffer_reserve 4
1007
1008        }
1009        /*
1010        ident "drv_openal.sndeng"
1011        param
1012        {
1013            // Ignore all DirectSound errors.
1014            ignore_errors 0
1015
1016            // As default, all mono wave files are played as 3d sound,
1017            // and all stereo wave files are played conventionally.
1018            no3d_always 0
1019            no3d_pan_scale 1.0
1020            no3d_back_down 0.0
1021
1022            // Sound buffer len used for each sound source.
1023            buffer_size 88200
1024
1025            // Pre-load seconds for each wave file.
1026            preload_sec 0.0
1027
1028            // Maximal change of the volume of each sound source per frame.
1029            // Setting this parameter to an non-zero value
1030            // may help avoiding cracking.
1031            // For example, a value of 0.1 means that a sound source is not
1032            // stopped immediately, but fade down during a period of 10 frames.
1033            max_volume_change_per_frame 0.1
1034
1035            // Requested format for wave files since some formats give
1036            // a ugly performance on some sound cards.
1037            wave_bits_per_sample 16
1038            wave_channels 1
1039            wave_samples_per_sec 44100
1040            // Number of sound buffers to reserve at initialization:
1041            wave_buffer_reserve 4
1042        }
1043        */
1044    }
1045
1046    // Actor logging switches.
1047    // Note that other components like drivers may have further switches.
1048    log
1049    {
1050        evtmgr 1            // Log events of event queues.
1051        stat 0              // Log the statistical information of each frame.
1052    }
1053
1054    // Statistical information display configuration.
1055    insp
1056    {
1057        // Info paint offset and character size:
1058        paint
1059        {
1060            offs_x_pix 0.0
1061            offs_y_pix 0.0
1062            char_size_x_pix 0.0
1063            char_size_y_pix 0.0
1064        }
1065
1066        // Enable particular statistical information items:
1067        general 0           // General information (including engine version).
1068        frmtime 1           // Frametime.
1069        mem 0               // Memory
1070        gfxport 0           // Gfxport rendering statistics.
1071        gfxbase 0           // Graphics basic information.
1072        gfxstat 0           // Graphics driver statistics.
1073        msg 0               // Show messages.
1074
1075        // File to log the frametime into.
1076        frmtime_logfile ""
1077        //frmtime_logfile "log_frametime.log"
1078        // Maximal number of message lines:
1079        msg_limit 8
1080        // Also include non-errors:
1081        msg_alsoinfo 0
1082    }
1083
1084    // Input configuration:
1085    input
1086    {
1087        // Player control smooth time for movements and rotating.
1088        // May be for example useful when creating demo videos.
1089        smooth_move 0.0
1090        smooth_rot 0.0
1091        // Position device dead zone.
1092        deadzone 0.0
1093
1094        // Drivers:
1095        mgr
1096        // Select these entries for using DirectInput:
1097        {
1098            inputmgr_ident "drv_stdinput.inputmgr_multi"
1099            inputmgr_param
1100            {
1101                env "env"
1102                ctx "ctx"
1103                entry_array
1104                // DirectInput:
1105                {
1106                    ctx_pattern "application"
1107                    ident "drv_dinput.inputmgr"
1108                    param
1109                    {
1110                        env "env"
1111                        ctx "ctx"
1112                       
1113                        handle_keyboard 1
1114                        handle_mouse 0
1115                        handle_ctrl 1   // For example joysticks
1116                       
1117                        ignore_di_errors 0
1118                        attached_only 0
1119                        // Work around for DirectInput bug:
1120                        // If the keyboard is not polled for this number
1121                        // of seconds, assume the keyboard to be reset.
1122                        reset_time_limit 1.0
1123                        // If not zero, joystick devices are polled within
1124                        // a thread every thread_period seconds.
1125                        thread_period 0.1
1126                    }
1127                }
1128                // Select these entries for using the Windows message queue:
1129                {
1130                    ctx_pattern "application"
1131                    ident "drv_wininput.inputmgr"
1132                    param
1133                    {
1134                        env "env"
1135                        ctx "ctx"
1136                       
1137                        handle_keyboard 0
1138                        handle_mouse 1
1139                       
1140                        catch_mouse 0   // Can be toggled by the "c" key.
1141                    }
1142                }
1143                // Used for ActiveX controls and Max player:
1144                {
1145                    ctx_pattern "activex|maxplayer"
1146                    ident "drv_wininput.inputmgr"
1147                    param
1148                    {
1149                        env "env"
1150                        ctx "ctx"
1151                        catch_mouse 0   // Can be toggled by the "c" key.
1152                    }
1153                }
1154            }
1155        }
1156
1157        // Input mapping configuration.
1158        // Format: <kind> <device> <event> <command>
1159        // <kind>: Kind of device:
1160        //   trigger: A key generating events when being pressed.
1161        //   button: A key generating events when being pressed and released.
1162        //   motion: A device generating relative motions, e.g. mouse.
1163        //   position: A device having an absolute position, e.g. joystick.
1164        // <device>: Device name. May contain wild cards like "*".
1165        // <event>: Event name.
1166        // <command>: Command sent to the engine.
1167        mapping
1168        {
1169            // Syntax: mode device event command
1170           
1171            trigger "Keyboard" "0" "goto_level0"
1172            trigger "Keyboard" "1" "goto_level1"
1173            trigger "Keyboard" "2" "goto_level2"
1174            trigger "Keyboard" "3" "goto_level3"
1175            trigger "Keyboard" "4" "goto_level4"
1176            trigger "Keyboard" "5" "goto_level5"
1177            trigger "Keyboard" "6" "goto_level6"
1178            trigger "Keyboard" "7" "goto_level7"
1179            trigger "Keyboard" "8" "goto_level8"
1180            trigger "Keyboard" "9" "goto_level9"
1181
1182            trigger "Keyboard" "F1" "goto_level10"
1183            trigger "Keyboard" "F2" "goto_level11"
1184            trigger "Keyboard" "F3" "goto_level12"
1185            trigger "Keyboard" "F4" "goto_level13"
1186            trigger "Keyboard" "F5" "goto_level14"
1187            trigger "Keyboard" "F6" "goto_level15"
1188            trigger "Keyboard" "F7" "goto_level16"
1189            trigger "Keyboard" "F8" "goto_level17"
1190            trigger "Keyboard" "F9" "goto_level18"
1191            trigger "Keyboard" "F10" "goto_level19"
1192            trigger "Keyboard" "F11" "goto_level20"
1193            trigger "Keyboard" "F12" "goto_level21"
1194
1195            trigger "Keyboard" "A" ""
1196            trigger "Keyboard" "B" "toggle_gfxboundwire"
1197            trigger "Keyboard" "C" "toggle_catch_mouse"
1198            trigger "Keyboard" "D" "toggle_physcontactwire"
1199            trigger "Keyboard" "E" "reset_msg"
1200            trigger "Keyboard" "F" "toggle_frmtime"
1201            trigger "Keyboard" "G" "god"
1202            trigger "Keyboard" "H" "toggle_physmeshwire"
1203            trigger "Keyboard" "I" ""
1204            trigger "Keyboard" "J" "toggle_stat"
1205            trigger "Keyboard" "K" "reset_stat"
1206            trigger "Keyboard" "L" "load_file_default"
1207            trigger "Keyboard" "M" "toggle_gfxmeshwire"
1208            trigger "Keyboard" "N" ""
1209            trigger "Keyboard" "O" "reload_io"
1210            trigger "Keyboard" "P" "toggle_sensormeshwire"
1211            trigger "Keyboard" "Q" "toggle_sensorboundwire"
1212            trigger "Keyboard" "R" "res_refresh_all"
1213            trigger "Keyboard" "S" "store_file_default"
1214            trigger "Keyboard" "T" "toggle_physboundwire"
1215            trigger "Keyboard" "U" "toggle_noisewire"
1216            trigger "Keyboard" "V" "toggle_gfxshvolwire"
1217            trigger "Keyboard" "W" ""
1218            trigger "Keyboard" "X" ""
1219            trigger "Keyboard" "Y" "toggle_fullscreen"
1220            trigger "Keyboard" "Z" "special"
1221
1222            trigger "Keyboard" "Escape" "quit"
1223            trigger "Keyboard" "Space" ""
1224            trigger "Keyboard" "Return" ""
1225
1226            button "Keyboard" "Up" "switch_vel_pos_y"
1227            button "Keyboard" "Down" "switch_vel_neg_y"
1228            button "Keyboard" "Left" "switch_vel_neg_x"
1229            button "Keyboard" "Right" "switch_vel_pos_x"
1230            button "Keyboard" "Page Up" "switch_spin_pos_x"
1231            button "Keyboard" "Page Down" "switch_spin_neg_x"
1232
1233            trigger "Mouse" "Left Button" ""
1234            trigger "Mouse" "Right Button" ""
1235            motion "Mouse" "X Axis" "apply_rot_pos_z"
1236            motion "Mouse" "Y Axis" "apply_rot_pos_x"
1237            motion "Mouse" "X Axis" "move_cursor_x"
1238            motion "Mouse" "Y Axis" "move_cursor_y"
1239            position "Mouse" "X Axis" ""
1240            position "Mouse" "Y Axis" ""
1241
1242            position "*joystick*" "X Axis" "assign_spin_pos_z"
1243            position "*joystick*" "Y Axis" "assign_vel_pos_y"
1244            trigger "*joystick*" "Button 0" ""
1245            trigger "*joystick*" "Button 1" ""
1246        }
1247    }
1248
1249    mediaplay
1250    {
1251        prefix "bin/res/"
1252    }
1253
1254    // Configuration of communication channels to external applications.
1255    cas
1256    {
1257        // Enable cas shell:
1258        enabled 1
1259
1260        // TCP port of the CAS (component access shell) terminal.
1261        addrport "0.0.0.0:33301"
1262
1263        // Echo input of the CAS terminal.
1264        // Should be set to 1 when using a TELNET client.
1265        echo 1
1266
1267        // Emulate the telnet protocol.
1268        // Should be set to 1 when using a TELNET client.
1269        // If set to 0, the raw lines are sent.
1270        telnet 1
1271    }
1272}
1273
1274///////////////////////////////////////////////////////////////////////////////
1275// End of file.
Note: See TracBrowser for help on using the repository browser.