mirror of
https://github.com/troisjs/trois.git
synced 2024-11-24 04:12:02 +08:00
add texture encoding
This commit is contained in:
parent
7b66f37c09
commit
d0a78e8061
@ -1,5 +1,5 @@
|
|||||||
import { defineComponent, PropType, watch } from 'vue'
|
import { defineComponent, PropType, watch } from 'vue'
|
||||||
import { ClampToEdgeWrapping, LinearFilter, LinearMipmapLinearFilter, ShaderMaterial, Texture, TextureLoader, UVMapping } from 'three'
|
import { ClampToEdgeWrapping, LinearEncoding, LinearFilter, LinearMipmapLinearFilter, ShaderMaterial, Texture, TextureLoader, UVMapping } from 'three'
|
||||||
import { bindProp } from '../tools'
|
import { bindProp } from '../tools'
|
||||||
import { MaterialInjectionKey, MaterialInterface } from './Material'
|
import { MaterialInjectionKey, MaterialInterface } from './Material'
|
||||||
import { Vector2PropInterface } from '../core/Object3D'
|
import { Vector2PropInterface } from '../core/Object3D'
|
||||||
@ -20,6 +20,7 @@ export default defineComponent({
|
|||||||
onLoad: Function as PropType<(t: Texture) => void>,
|
onLoad: Function as PropType<(t: Texture) => void>,
|
||||||
onProgress: Function as PropType<(e: ProgressEvent) => void>,
|
onProgress: Function as PropType<(e: ProgressEvent) => void>,
|
||||||
onError: Function as PropType<(e: ErrorEvent) => void>,
|
onError: Function as PropType<(e: ErrorEvent) => void>,
|
||||||
|
encoding: { type: Number, default: LinearEncoding },
|
||||||
// format: { type: Number, default: RGBAFormat },
|
// format: { type: Number, default: RGBAFormat },
|
||||||
mapping: { type: Number, default: UVMapping },
|
mapping: { type: Number, default: UVMapping },
|
||||||
wrapS: { type: Number, default: ClampToEdgeWrapping },
|
wrapS: { type: Number, default: ClampToEdgeWrapping },
|
||||||
@ -46,7 +47,7 @@ export default defineComponent({
|
|||||||
if (!this.src) return undefined
|
if (!this.src) return undefined
|
||||||
const texture = new TextureLoader().load(this.src, this.onLoaded, this.onProgress, this.onError)
|
const texture = new TextureLoader().load(this.src, this.onLoaded, this.onProgress, this.onError)
|
||||||
// use format ? TextureLoader will automatically set format to THREE.RGBFormat for JPG images.
|
// use format ? TextureLoader will automatically set format to THREE.RGBFormat for JPG images.
|
||||||
const wathProps = ['mapping', 'wrapS', 'wrapT', 'magFilter', 'minFilter', 'repeat', 'rotation', 'center']
|
const wathProps = ['encoding', 'mapping', 'wrapS', 'wrapT', 'magFilter', 'minFilter', 'repeat', 'rotation', 'center']
|
||||||
wathProps.forEach(prop => { bindProp(this, prop, texture) })
|
wathProps.forEach(prop => { bindProp(this, prop, texture) })
|
||||||
return texture
|
return texture
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user