https://github.com/bs-community/skinview3d/ Modified version of SkinView3D to remove unnecessary things and make it work on PS3D skins.
Go to file
Haowei Wen 0b9cccfa68
add 'preserveDrawingBuffer' option
The default value of 'preserveDrawingBuffer' is changed back to false
due to performance concern. To turn it on, you have to specify
'preserveDrawingBuffer: true' in SkinViewerOptions.

Related: #65, #67
2020-09-09 14:06:53 +08:00
.github/workflows deploy to gh-pages 2020-08-17 22:17:21 +08:00
examples remove 'domElement' property & add 'canvas' property 2020-09-06 18:27:18 +08:00
src add 'preserveDrawingBuffer' option 2020-09-09 14:06:53 +08:00
.editorconfig Working transpiling via "npm run buildtest" command 2018-07-20 22:07:52 -05:00
.eslintrc.yaml Refactor SkinViewer 2020-05-29 15:45:09 +08:00
.gitignore deploy to gh-pages 2020-08-17 22:17:21 +08:00
LICENSE Happy New Year! 2020 2020-01-01 00:11:55 +08:00
README.md remove 'domElement' property & add 'canvas' property 2020-09-06 18:27:18 +08:00
package-lock.json update three->r120 & three-minifier->v0.2.0-alpha.2 2020-08-27 23:27:14 +08:00
package.json update three->r120 & three-minifier->v0.2.0-alpha.2 2020-08-27 23:27:14 +08:00
rollup.config.js use three-minifier 2020-01-31 08:43:46 +08:00
tsconfig.json change target to es2017 2020-06-14 16:19:42 +08:00

README.md

skinview3d

CI Status NPM Package MIT License Gitter Chat

Three.js powered Minecraft skin viewer.

Features

  • 1.8 Skins
  • HD Skins
  • Capes
  • Slim Arms
    • Automatic model detection (Slim / Default)

Usage

Example of using skinview3d

<canvas id="skin_container"></canvas>
<script>
	let skinViewer = new skinview3d.SkinViewer({
		canvas: document.getElementById("skin_container"),
		width: 300,
		height: 400,
		skin: "img/skin.png"
	});

	// Change viewer size
	skinViewer.width = 600;
	skinViewer.height = 800;

	// Load another skin
	skinViewer.loadSkin("img/skin2.png");

	// Load a cape
	skinViewer.loadCape("img/cape.png");

	// Unload(hide) the cape
	skinViewer.loadCape(null);

	// Control objects with your mouse!
	let control = skinview3d.createOrbitControls(skinViewer);
	control.enableRotate = true;
	control.enableZoom = false;
	control.enablePan = false;

	// Add an animation
	let walk = skinViewer.animations.add(skinview3d.WalkingAnimation);
	// Add another animation
	let rotate = skinViewer.animations.add(skinview3d.RotatingAnimation);
	// Remove an animation, stop walking dude
	walk.remove();
	// Remove the rotating animation, and make the player face forward
	rotate.resetAndRemove();
	// And run for now!
	let run = skinViewer.animations.add(skinview3d.RunningAnimation);

	// Set the speed of an animation
	run.speed = 3;
	// Pause single animation
	run.paused = true;
	// Pause all animations!
	skinViewer.animations.paused = true;
</script>

Anti-aliasing

skinview3d supports FXAA (fast approximate anti-aliasing). To enable it, you need to replace SkinViewer with FXAASkinViewer.

It's recommended to use an opaque background when FXAA is enabled, as transparent background may look buggy.

let skinViewer = new skinview3d.FXAASkinViewer({
	// we do not use transparent background, so disable alpha to improve performance
	alpha: false,
	...
});
// set the background color
skinViewer.renderer.setClearColor(0x5a76f3);

Build

npm run build