Some potential problems (take a look and see if any apply):
- Texture sides are not integer powers of 2. Eg 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, and so on.
- The "Use for 3D" box on the texture has not been checked. Because GM:S uses texture pages (many sprites and backgrounds on one texture), UV coordinates outside the appropriate range will receive texels from neighboring sprites/backgrounds. The "Use for 3D" checkbox puts the sprite or background onto its own texture page, to deal with this problem (although badly).
- Texture wrapping may be turned off. Use texture_set_repeat(true);
Now that that's been addressed,
- Using execute_code or execute_file to load a model is a terrible idea. It is slower than loading the model using a format-reading script, and introduces a major security flaw.
The textures are 1024x1024, so no problem there. The "Use for 3D" was checked. Texture wrapping was turned on.
Quite true. The execute_file function was VERY slow, but I had already invested a lot of time and effort into it on my previous game.