startk3d()
{
	k3d_base=`pwd`/..
        k3dpath=$k3dbase/renderjob:$k3dbase/renderframe:$PATH
        k3dcmd=$k3dbase/application/k3d
        k3dparams="--libpaths $k3dbase/modules --nosplash --batch $*"
	
	# If DEBUG is defined, this runs gdb instead of starting the command.
        # It is klunky but should work for most purposes.
        if [ -n "$DEBUG" ]; then
          cat > .tmpscript

          # We do this because as it exists in its source directory, k-3d
          # is a wrapper script.  Setting exec to be echo allows us to
          # get the final command that actually starts k-3d.
	  properline=`(alias exec=echo; PATH=$k3dpath source $k3dcmd $k3dparams)`
          propercmd=`echo $properline | sed -e's/\([^ ]*\).*/\1/'`
          properparams=`echo $properline | sed -e"s/$propercmd//" -e's/--script -/--script .tmpscript/'`
          echo -n "run " > .tmpgdb
          echo $properparams >> .tmpgdb

          k3d_execdir=$k3dbase/application PATH=$k3dpath gdb -x .tmpgdb `pwd`/../k3d/.libs/$propercmd < /dev/tty

          rm -rf .tmpscript
          rm -rf .tmpgdb
        else

		k3d_execdir=$k3d_base/application PATH=$k3d_base/renderjob:$k3d_base/renderframe:$k3d_base/shaderpreprocessor:$PATH \
			$VALGRIND $k3d_base/application/.libs/lt-k3d-bin \
				--dialogpath $k3d_base/dialogtemplates \
				--libpaths $k3d_base/modules \
				--shadersourcepaths $k3d_base/shaders \
				--shadercachepath ~/.k3d/shadercache \
				--sharepath $k3d_base/share \
				--tutorialspath $k3d_base/tutorials \
				--optionsfile ~/.k3d/options.k3d \
				--log-level warning --show-timestamps --show-process --color \
				--nosplash \
				--batch $*

        fi
}

