Vì vậy, tôi đang viết một trò chơi nhỏ bằng Direct3D 9 và tôi đang sử dụng đa điểm cho địa hình. Tất cả những gì tôi đang làm là lấy mẫu 3 kết cấu và bản đồ pha trộn và lấy màu tổng thể từ ba kết cấu dựa trên các kênh màu từ bản đồ pha trộn. Dù sao, tôi đang bị giảm tốc độ khung hình lớn khi tôi lấy mẫu hơn 1 kết cấu, tôi sẽ chuyển từ 120+ khung hình / giây xuống dưới 50.
Đây là mã HLSL chịu trách nhiệm cho việc làm chậm:
float3 ground = tex2D(GroundTex, multiTex).rgb;
float3 stone = tex2D(StoneTex, multiTex).rgb;
float3 grass = tex2D(GrassTex, multiTex).rgb;
float3 blend = tex2D(BlendMapTex, blendMap).rgb;
Tôi đang làm sai à? Nếu bất cứ ai có bất kỳ thông tin hoặc lời khuyên về lấy mẫu kết cấu hoặc bất cứ điều gì, đó sẽ là tốt đẹp.
Cảm ơn.