937 Commits

Author SHA1 Message Date
David Vierra
1a11979d4a Add minecraftinstall option to show snapshots (i.e. versions we can't parse) 2015-09-01 04:37:35 -10:00
David Vierra
4edb129a02 WorldListWidget no longer creates a texture atlas nor loads block models. 2015-09-01 01:39:06 -10:00
David Vierra
0f2ef1f944 Center and rescale map panel when shown. 2015-08-31 00:15:51 -10:00
David Vierra
3d61d7bcca Add toolbar buttons to change MC version and resource pack.
TODO: Reconsider the global settings for MC version and resource pack...
2015-08-30 08:07:22 -10:00
David Vierra
d011eb8ba6 EditorSession is now responsible for creating its own ResourceLoader 2015-08-30 08:07:22 -10:00
David Vierra
3c3e0292cc Move getResourceLoaderForFilename to minecraftinstall.py 2015-08-30 08:07:21 -10:00
David Vierra
801c122f33 Add cameraVector property to CutawayWorldView 2015-08-30 05:19:45 -10:00
David Vierra
73447bee69 Add custom editor widget for TAG_Long tags in NBT Editor.
Should hopefully solve OverflowError caused by coercing a TAG_Long's value to int.
2015-08-22 13:27:24 -10:00
David Vierra
95413d2e88 Fix var decl ordering for cython 0.20
cython 0.20 is for Ubuntu 14.04
2015-08-20 11:44:25 -10:00
David Vierra
e3a785ec50 Attempt to fix weird QGLContext bug by holding a reference to the QGLContext 2015-08-20 11:42:02 -10:00
David Vierra
481eb0f523 Add shulker model for MC 1.9 2015-08-19 14:25:59 -10:00
David Vierra
75d229a2b1 Handle missing 'variants' in blockstates json
json may have 'multipart' instead. Handle this!!
2015-08-19 14:25:50 -10:00
David Vierra
f32212b3f5 Handle entity not found when zooming to entity 2015-08-19 14:25:22 -10:00
David Vierra
caa1ee2456 Tweak boundingbox for getting entity from find results.
Need a better way to get entity by UUID...
2015-08-19 14:24:55 -10:00
David Vierra
e5b9c67d31 Move data collection to mcedit2.spec. Remove hook-mcedit2.py.
Specfile update for PyInstaller 3
2015-08-19 14:24:00 -10:00
David Vierra
4cdf7cffc8 Rename "Edit Chunk" to "Inspect Chunk" and move most of its code to inspector 2015-07-29 16:55:17 -10:00
David Vierra
8c98350426 Print repr of GL_VENDOR and GL_RENDERER for drivers that return non-ascii strings. 2015-07-23 14:52:34 -10:00
David Vierra
b05b923466 Embedded profiler now records only samples over the past 10 seconds.
Makes live profiling more responsive.
2015-07-20 19:43:00 -10:00
David Vierra
3b6d6d6b39 Some work on a numpy-based raycast method. Not yet used. 2015-07-20 19:42:31 -10:00
David Vierra
115ee5b9fb CONTRIBUTING.md: Link to wiki page on mcedit2 repo. 2015-07-20 16:46:26 -10:00
David Vierra
8fadb2bb76 Change BindTextureRenderNode to make fewer GL calls when the texture scale is None. 2015-07-19 03:11:02 -10:00
David Vierra
5125fdf86e Document createRenderNode, updateRenderNode, and updateChildren to make intentions more clear.
Change updateChildren to be non-recursive.
updateRenderNode now descends into children and calls updateChildren as needed.

The rendergraph is now slightly less creepy.
2015-07-19 03:06:18 -10:00
David Vierra
f66e2a8dbf Stop rendering rainbow creepers for unknown entities. 2015-07-19 02:12:15 -10:00
David Vierra
544214ecea Skip blank itemframes.
This may be done improperly. Accessing ref.Item may create an empty compound, and I haven't checked if blank frames have an empty compound for Item or not.
2015-07-19 02:10:49 -10:00
David Vierra
5b963e6222 Add Chest and Large Chest models 2015-07-19 02:10:48 -10:00
David Vierra
f32c8b13bc Add ScaleRenderNode 2015-07-19 02:08:05 -10:00
David Vierra
63737e8ae3 Remove wonky block model for chests 2015-07-19 02:07:55 -10:00
David Vierra
bfae698646 Fix configured block models not being used. 2015-07-18 13:44:27 -10:00
David Vierra
48dd2b25a5 Add armor stand model (with extra arms!)
That's why they call it an arm-or stand.
2015-07-18 12:53:30 -10:00
David Vierra
4db059fde9 Change docs to alabaster theme, skip Qt staticMetaObjects
Add github user/repo for theme purposes
More mceditlib->mcedit2
2015-07-17 04:10:57 -10:00
David Vierra
5b25e95cab Change NBTAttrs a bit so sphinx documents them quietly
Both of these changes make them more like the builtin property()
NBTAttr access on classes returns self, so sphinx can document the class
NBTAttr constructors take a docstring argument and replace the instance's doc so sphinx doesn't repeat NBTAttr's doc everywhere
2015-07-17 04:10:07 -10:00
David Vierra
c7a19c4a4a Add getActualBlockState rules for doors and redstone 2015-07-17 01:59:44 -10:00
David Vierra
697fa78fca Add target to doc/Makefile for running sphinx-apidoc
Replace 'mceditlib' with 'mcedit2' in doc info
2015-07-17 01:59:00 -10:00
David Vierra
1649dcf28b Allow blockStatesByResourcePathVariant to have multiple entries for a path,variant pair as intended 2015-07-17 01:57:55 -10:00
David Vierra
cd2d6b7ea9 Add a special case to preserve the color of stained glass when rendering 2015-07-16 14:53:50 -10:00
David Vierra
6203847d77 Fix all issues related to improperly rotated, lit, and culled models that use variant rotation
Buttons, levers, quartz pillars and others are now oriented, lit, and culled correctly
2015-07-16 02:00:57 -10:00
David Vierra
e018234e6e Removed variantZrot, which never appears in the variant files.
I feel dumb.
2015-07-16 02:00:03 -10:00
David Vierra
559555ca56 Set default blockstate of unknowns to '' 2015-07-16 01:26:04 -10:00
David Vierra
09879c1af5 Fix zero-length arrays appearing in setBlocks 2015-07-16 01:25:40 -10:00
David Vierra
c827444e0f time_getsetblocks is working again and produces fairer results 2015-07-16 01:25:18 -10:00
David Vierra
12f93e8c62 Add getActualBlockState rules for fences and panes/bars.
This method is done with Python and is very slow.
2015-07-15 21:32:34 -10:00
David Vierra
47ee219528 blockmodels.pyx: cookedModelsByBlockState keys are now split into components
Splitting the blockState into properties and sorting them makes property order no longer matter.
Also, all models are added into cookedModelsByBlockState and not just those for hidden states. Soon, I should be able to remove resourcePath and resourceVariant from the base block data dump and only keep them in the states dump.

blockStatesByResourcePathVariant value elements are also split into internalName and blockState
2015-07-15 21:31:56 -10:00
David Vierra
e5982651c1 Update raw data dump: Remove unused material* fields, add materialName field, remove duplicate renderType field 2015-07-15 21:27:36 -10:00
David Vierra
9ce23e8d7b Don't duplicate code from blocktypes and also don't get it completely wrong 2015-07-15 18:01:46 -10:00
David Vierra
5037655787 Hidden block states are stashed in cookedModelsByBlockState
getActualBlockState rule written for grass with snow on top.
2015-07-15 17:38:45 -10:00
David Vierra
4263b184fa Load "hidden" blockstates from a json file.
These new models are cooked and then thrown away as there is nowhere to put them! :(
2015-07-15 17:33:39 -10:00
David Vierra
e65817bb60 Store uncooked models with model variants separate from blockstates
Uncooked models are stored in quadsByResourcePathVariant {(path, variant): quads}
blockState mapping is stored in blockStatesByResourcePathVariant {(path, variant): [nameAndState]}

This allows us to skip cooking models twice when one model (path, variant) is used for more than one blockState
2015-07-15 14:57:22 -10:00
David Vierra
79963a55a9 Create dataDir on Mac and Linux 2015-07-15 13:25:52 -10:00
David Vierra
68cfbc4c98 Add special cases for face culling for Slabs and other blocks
Also includes leaves with fancyGraphics=True, which is just asserted to be True for now...
2015-07-15 12:34:51 -10:00
David Vierra
7443e6ad74 Remove unused layers from AllLayers
SceneUpdateTask doesn't know if a layer isn't provided by any chunk meshes...
2015-07-15 12:33:48 -10:00