UNPKG

molstar

Version:

A comprehensive macromolecular library.

36 lines 1.48 kB
/** * Copyright (c) 2018-2020 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose <alexander.rose@weirdbyte.de> */ import { ValueCell } from '../mol-util'; import { idFactory } from '../mol-util/id-factory'; import { clamp } from '../mol-math/interpolate'; var getNextRenderableId = idFactory(); export function createRenderable(renderItem, values, state) { return { id: getNextRenderableId(), materialId: renderItem.materialId, values: values, state: state, render: function (variant, sharedTexturesList) { if (values.uAlpha && values.alpha) { ValueCell.updateIfChanged(values.uAlpha, clamp(values.alpha.ref.value * state.alphaFactor, 0, 1)); } renderItem.render(variant, sharedTexturesList); }, getProgram: function (variant) { return renderItem.getProgram(variant); }, update: function () { return renderItem.update(); }, dispose: function () { return renderItem.destroy(); } }; } export function createComputeRenderable(renderItem, values) { return { id: getNextRenderableId(), values: values, render: function () { return renderItem.render('compute'); }, update: function () { return renderItem.update(); }, dispose: function () { return renderItem.destroy(); } }; } //# sourceMappingURL=renderable.js.map