だから私はPRBoomを腕に移植して遊んでいて、問題を乗り越えることができます...
次のコードがあります....
R_DrawColumn_f R_GetDrawColumnFunc(enum column_pipeline_e type,
enum draw_filter_type_e filter,
enum draw_filter_type_e filterz) {
R_DrawColumn_f result = drawcolumnfuncs[V_GetMode()][filterz][filter][type];
if (result == NULL)
I_Error("R_GetDrawColumnFunc: undefined function (%d, %d, %d)",
type, filter, filterz);
return result;
}
生産する
04-12 12:58:45.970: E/DJNI(16943): システム エラー: R_GetDrawColumnFunc: 未定義の関数 (2、1、0)
したがって、 drawcolumnfuncs メソッドがうまくいかないことは私の理解です。しかし、ここで苦労しています。この関数 sig が何をしているのかわかりません...
static R_DrawColumn_f drawcolumnfuncs[VID_MODEMAX][RDRAW_FILTER_MAXFILTERS][RDRAW_FILTER_MAXFILTERS][RDC_PIPELINE_MAXPIPELINES] = {
{
{
{NULL, NULL, NULL, NULL,},
{R_DrawColumn8_PointUV,
R_DrawTLColumn8_PointUV,
R_DrawTranslatedColumn8_PointUV,
R_DrawFuzzColumn8_PointUV,},
{R_DrawColumn8_LinearUV,
R_DrawTLColumn8_LinearUV,
R_DrawTranslatedColumn8_LinearUV,
R_DrawFuzzColumn8_LinearUV,},
{R_DrawColumn8_RoundedUV,
R_DrawTLColumn8_RoundedUV,
R_DrawTranslatedColumn8_RoundedUV,
R_DrawFuzzColumn8_RoundedUV,},
},
...
HashMap の C バージョンを作成しているように見えますが、なぜ null を返すのでしょうか?