I’m splitting this off as a separate topic from Scripting: What Do We Need to Get There to try and keep the thread from getting too scrambled.
@Moxinilian Do you have any idea how we can expose non-scripted components to scripts. For example, how would we expose the Amethyst built-in
Transform component to a script?
Right now all of the ideas for scripted components use a buffer to store the component data, but with the built-in components, they are going to be in memory in the Rust
repr which is unpredictable and unusable from scripts. Converting them to a representation compatible with scrips would almost surely require copying.
It seems like you would have to make any components that you want to be acessible to scripts stored in buffers in the same way that components created by scripts would be. That would mean that we would have to recreate ( or otherwise re-configure ) any of the core Amethyst systems that you want to use in a scripted game as scripts instead of built-in systems.
Other than having set up the existing core Amethyst systems differently for a scripted game, as long as there are no performance disadvantages to our scripting solution, it probably wouldn’t be a problem to have them as scripts instead of build-in systems. I’m not sure.