Jump to content

Best strategy for texturing through "printing rolls" ?


Recommended Posts

Hi together,

In the attached picture you see a part of a roll printing machine. The brown rolls should "print" on the white plane: the white plane is moving and the rolls are rotating. Each printing roll is independent and can print another texture.

Here is a good video showing the functionality: youtube link



As an example:
- roll 1 is printing "TE" in red color
- roll 2 is printing "XT" in blue color


I have absolutely no idea how to do this...

Maybe with animating textures (different texture for each roll, positioning along x-axis) and masks, so you can only see it after the roll? But the user decides when which roll prints, so there can be gaps after the roll.

Is this even possible?

Please ask if anything is unclear. Hopefully some of you have an answer.



Link to comment
Share on other sites

Interesting problem :-)

I would have also said that a different texture for each roller with either masks or simply use alpha transparent textures on planes with edge directly under each roller and animate the texture transform. But like you mentioned your use-case sounds more complicated.

Could you try doing it exactly the way the printing is done in reality i.e. directly under each roller sample a row of pixels from an off-screen texture and composite them on a new, visible texture representing the print? Dynamic textures created from array buffer I think is the right terminology?

User could deactivate printing on any roller and you simply stop laying down new rows of pixels.

Not sure how performant this would be though.

Link to comment
Share on other sites

Wow, i really didn't thought of this, thanks.

It is not exactly what you wrote I think, but here is a small test: http://www.babylonjs-playground.com/#JLBZ1

With each new print I have to create a new plane and attach the correct texture (dependent on the printing roll). So with four printing rolls I need to store four different textures.

Maybe I can work with instances of the planes, because only the position will change.

So it could be really simple to bring the printing machine to life:
->  function print(rollerID) : create plane instance. For example, called every full rotation of each printing roll with the printing roll id as argument

Thank you @inteja


Is it possible, to move the planes along a mesh? In this case, to wind the printed web.



Again, Thanks!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...