예제 #1
0
        /*
         * ================
         * R_AliasDrawModel
         * ================
         */
        static void R_AliasDrawModel(alight_t plighting)
        {
            r_amodels_drawn++;

            // cache align
            pfinalverts = (draw.finalvert_t[])finalverts;
            pauxverts   = auxverts;

            paliashdr = (model.aliashdr_t)model.Mod_Extradata(currententity.model);
            pmdl      = (model.mdl_t)paliashdr.model;

            R_AliasSetupSkin();
            R_AliasSetUpTransform(currententity.trivial_accept);
            R_AliasSetupLighting(plighting);
            R_AliasSetupFrame();

            if (currententity.colormap == null)
            {
                sys_linux.Sys_Error("R_AliasDrawModel: !currententity.colormap");
            }

            r_affinetridesc.drawtype = (currententity.trivial_accept == 3) &&
                                       r_recursiveaffinetriangles;

            if (r_affinetridesc.drawtype)
            {
                draw.D_PolysetUpdateTables();                   // FIXME: precalc...
            }
            else
            {
            }

            acolormap = currententity.colormap;

            if (currententity != client.cl.viewent)
            {
                ziscale = (double)0x8000 * (double)0x10000;
            }
            else
            {
                ziscale = (double)0x8000 * (double)0x10000 * 3.0;
            }

            if (currententity.trivial_accept != 0)
            {
                R_AliasPrepareUnclippedPoints();
            }
            else
            {
                R_AliasPreparePoints();
            }
        }
예제 #2
0
        /*
        ================
        R_AliasDrawModel
        ================
        */
        static void R_AliasDrawModel(alight_t plighting)
        {
            r_amodels_drawn++;

            // cache align
            pfinalverts = (draw.finalvert_t[])finalverts;
            pauxverts = auxverts;

            paliashdr = (model.aliashdr_t)model.Mod_Extradata (currententity.model);
            pmdl = (model.mdl_t)paliashdr.model;

            R_AliasSetupSkin ();
            R_AliasSetUpTransform (currententity.trivial_accept);
            R_AliasSetupLighting (plighting);
            R_AliasSetupFrame ();

            if (currententity.colormap == null)
                sys_linux.Sys_Error ("R_AliasDrawModel: !currententity.colormap");

            r_affinetridesc.drawtype = (currententity.trivial_accept == 3) &&
                    r_recursiveaffinetriangles;

            if (r_affinetridesc.drawtype)
            {
                draw.D_PolysetUpdateTables ();		// FIXME: precalc...
            }
            else
            {
            }

            acolormap = currententity.colormap;

            if (currententity != client.cl.viewent)
                ziscale = (double)0x8000 * (double)0x10000;
            else
                ziscale = (double)0x8000 * (double)0x10000 * 3.0;

            if (currententity.trivial_accept != 0)
                R_AliasPrepareUnclippedPoints ();
            else
                R_AliasPreparePoints ();
        }