Commit Graph

73 Commits

Author SHA1 Message Date
shadekiller666 33e2e0b028 Fixed a bug with item model loading that would occur if ModelBakery.addVariantName() was called with the same string location parameter for 2 different items, and the string pointed to a location that didn't exist, where ModelLoader.loadAnyModel() would substitute the blockdefinition in for the item model, but wouldn't remove the original input location from the loadingModels list, which would cause the location from the second call to throw an IllegalStateException even though that location now has a model. 2015-10-26 10:15:13 -07:00
shadekiller666 d1b220f6a3 Added OBJ loader for the ModelLoaderRegistry system. 2015-10-26 19:38:49 +03:00
RainWarrior dd365d7220 Model pipeline system.
Should replace all ad-hoc quad generation methods in forge, and make IBakedModel -> WorldRenderer data transfer faster. Added IVertexConsumer + helper classes; lighting that works correctly for non-axis-aligned faces using the new infrastructure. Changed smooth lighting algorithm, now it should work correctly for everything.
New block lighter can be disabled in the forge config options.
2015-10-26 19:25:48 +03:00
RainWarrior c4f370a7e6 Custom transformations in forge blockstate json. 2015-06-30 21:37:11 +03:00
RainWarrior 8f65678b99 Vanilla models can now use custom textures. Fixes #1962 2015-06-23 16:52:42 +03:00
RainWarrior 510b5523d5 Fixed perspective transformations for item models. 2015-06-23 15:56:18 +03:00
RainWarrior 1582e401ed Added ItemLayerModel - less awkward, simpler and faster version of ItemModelGenerator. 2015-06-23 04:43:48 +03:00
RainWarrior 07038f8342 Added fluid renderer. 2015-06-18 14:26:53 +03:00
Lex Manos e94288bbb1 Fixup model loading errors not being printed by making ICustomModelLoader.loadModel propogate IOExceptions as needed. 2015-06-16 16:03:10 -07:00
Lex Manos fef959d1e9 Redefine removal value in IRetextureableModel from null to empty string {""} due to ImmutibleMap not allowing null Values. Closes #1927 2015-06-09 12:36:36 -07:00
RainWarrior 685a97fd93 Fixed missing variant logging; added the possibility to specify the item variant in the blockstate json. 2015-06-04 18:07:03 +03:00
Lex Manos 267e1ee62f Hook BlockState's Json loading to add support for simplified Forge format.
See https://github.com/MinecraftForge/MinecraftForge/pull/1885 for more details.
2015-06-02 16:49:56 -07:00
RainWarrior 46b1b82f13 Fixed mipmapping not being enabled by expanding 1x1 texture 2015-04-01 16:06:03 +03:00
RainWarrior 638af63f4d Hopefully fix NPE during baking of empty vanilla item models 2015-02-23 16:02:10 +03:00
RainWarrior 0e34510032 Removed event bus call from the ModelLoader 2015-02-17 21:20:19 +03:00
RainWarrior 93cd9722b0 Added a default white texture; Fixed B3DLoader crashing when the brush has empty texture specified 2015-02-17 05:02:16 +03:00
RainWarrior 87ef833d32 Alternative models work once again 2015-02-14 00:23:03 +03:00
RainWarrior dfc2e04255 fix ModelLoader.setCustomModelResourceLocation not storing same item with different metadata values 2015-02-09 17:19:10 +03:00
RainWarrior 9a6fb600ec Reworked vanilla texture resolution, hopefully fixes NPE bug in FaceBakery 2015-02-08 15:51:41 +03:00
RainWarrior b8add23d9b ModelBakeEvent now has ModelLoader as an argument instead of ModelBakery; Added various static hooks to ModelLoader to allow registering model-related information before it's needed (prevents file-not-found errors on first baking pass); ModelLoader waits until ModelBakeEvent is done before showing any missing model exceptions; It's now possible to define models completely in-code (as illustrated by ModelBakeEventDebug). 2015-02-04 09:45:23 +03:00
RainWarrior 3a0de2edca Fixed tracking of UV locking state. Closes #1679 2015-02-03 10:40:30 +03:00
Lex Manos 79356d7023 Fixed ItemFrames not having a model. Closes #1678 2015-02-02 13:06:57 -08:00
RainWarrior 6eba0ebb93 Added model loader registry
Entry point: ModelLoaderRegistry
loader interface: ICustomModelLoader
custom model: IModel

ModelLoader is responsible for splicing into vanilla model system.
(you probably don't need to use it directly)

Interop with vanilla models isn't great yet
(vanilla models can't refer to custom ones as parents), will improve in
the future.

Includes loader for B3D models, with animation support
(net.minecraftforge.client.model.b3d).
Blender export plugin with compatible coordinate system:
https://github.com/RainWarrior/B3DExport

OBJ loader is being written, will be included at some point in the
future. For now you can convert OBJ to B3D via blender, or wait.
2015-01-29 11:33:52 +03:00