Results 1 to 12 of 12
  1. #1

    Fastest way to render 2D Animation (Blender internal)

    Hello!

    I'm focusing about 2D animation since I thought it would have been faster. It's also the occasion to create an animation of a comic strip I did when I was teenager.

    So I created this scene


    Then I cut all the layers (Background, curtains, seats) to incorporate the characters (also done in 2D) between those layers.
    Finally, I made some changes to have the fastest render time (shadeless materials, no light, just the camera, and I even change the resolution from 1920*1080 to 1280*720).

    I finally managed to have a render time of 10 seconds, which is (IMO) way TOO long!

    Here's how it looks in Blender


    Don't you have tips? (I know my computer is kinda old, around 6 years or so)

    I thought Blender would have render it in a fraction of time since it's only rendering planes with shadeless images and except for the last plane, all the other one have transparency...



  2. #2
    if you dont need a raytracer, then use the game engine. its basically the same but uses opengl.

    you can use a python script to output the frames, or use a screen recorder.

    OR, try setting the tile size to the output size. or calculate the size for the number of cpu cores you have. reduce the samples.
    System "IVAN" (rev 1.3b) - Win7 64bit - Blender 2.74:
    CPU- Intel i3-3220 3.30 Ghz | GPU- EVGA GTX 970 | RAM- GSkill Ares 16GB 1600 Mhz | MB- ASUS P8Z77-V LK



  3. #3
    Member JA12's Avatar
    Join Date
    Apr 2012
    Posts
    4,456
    Originally Posted by CurtYoung View Post
    I finally managed to have a render time of 10 seconds, which is (IMO) way TOO long!
    Assuming that's 10 seconds per frame, and ~42 minutes for 250 frames.

    If what you want is in the viewport, you can save that with render menu -> opengl render animation. 3D view properties -> display: only render hides everything else, and opengl render settings follow the settings in render properties.
    New to BA.org and have a support question? Here's how to do that more effectively.



  4. #4
    Thanks guys!
    I never used the render button below, indeed, it's exactly what I need, when I click, the image directly appears!

    Though I'm facing a new prob...

    Because of the alpha, there are stranges white lines around every borders, here's how it looks :
    Click image for larger version. 

Name:	untitled.png 
Views:	5 
Size:	370.7 KB 
ID:	501518

    My images are .png
    When I have an image with an alpha channel I just click on material > transparency > Z transparency and for the texture I click on alpha (set to 1.000), what's wrong? I don't have this with Blender Render...

    If I find a solution I could set the resolution to 1920*1080

    I quickly test the animation button with opengl, it seems it's only saving the frames, so I guess I should work differently (I used to directly output in H.264), this time I'll need to save all the frames, save the sounds, then mix everything! Not a prob because it seems it's gonna be fast if I find a solution for the white lines.



  5. #5
    not that familiar with the internal, but try setting alpha type to "clip" in the material settings. that should make the edges sharper.
    System "IVAN" (rev 1.3b) - Win7 64bit - Blender 2.74:
    CPU- Intel i3-3220 3.30 Ghz | GPU- EVGA GTX 970 | RAM- GSkill Ares 16GB 1600 Mhz | MB- ASUS P8Z77-V LK



  6. #6
    Indeed, after few researches I found the same prob, I set it to alpha clip (alpha and ever specular to 0), it's a bit better but not perfect, while it's perfect in viewport

    Here's the image rendered (click on link, otherwise it seems ok) :
    https://blenderartists.org/forum/att...0&d=1507834722


    Here's the blend.file
    https://nofile.io/f/QPeKZHVW9Wm/LAYERS+THEATRE+V2.blend
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	test2.png 
Views:	6 
Size:	363.0 KB 
ID:	501520  

    Last edited by CurtYoung; 12-Oct-17 at 14:07.



  7. #7
    Member dudecon's Avatar
    Join Date
    Sep 2007
    Location
    Camarillo, CA, USA
    Posts
    239
    The issue has to do with the way Blender handles partial transparency in the GL renderer. You can tell because the lighter bits are checkered if you zoom way in.
    Click image for larger version. 

Name:	test0003.jpg 
Views:	4 
Size:	81.0 KB 
ID:	501538
    I couldn't figure out a way around this, so I just disabled alpha in the output...
    Name:  test0002.jpg
Views: 58
Size:  19.3 KB
    and boom! Problem solved!
    You could also just export straight to jpg, which doesn't support alpha, so that would fix it too.
    I fiddled around and did a bunch more optimizations (turning off sampling and mipmaps, cutting out un-used geometry, random other stuff I've forgotten)
    LAYERS THEATRE V2_dudecon.blend
    That version renders 100 frames in about 2 seconds (so, 20ms per frame) which is about 500 times faster than you started with! No guarantees on your hardware, of course, but it's a start!
    Do keep us all updated on how this project turns out! Looks fun!
    Commissions, 3D prints, and Mechanical Engineering. If you appreciate my contributions, support me on Patreon!



  8. #8
    Member dudecon's Avatar
    Join Date
    Sep 2007
    Location
    Camarillo, CA, USA
    Posts
    239
    Oh, and just to eliminate ambiguity, use these buttons for the super-fast render times:
    Name:  test0004.jpg
Views: 58
Size:  45.6 KB
    They bypass the blender render system entirely and use open GL, which renders on the optimized graphics card hardware, with the disadvantage that some things are a little odd, like the partial alpha stuff above.
    Commissions, 3D prints, and Mechanical Engineering. If you appreciate my contributions, support me on Patreon!



  9. #9
    dudecon, thanks a lot!

    Indeed, I use these buttons
    I'm finally motivated to do an animation. (I have a bunch of 3D animation I gave up because of my slow computer).
    Now it's fast as hell!

    I'm so dumb I didn't think about JPG...

    Though I still use my file because you cut the layers, I'd like to keep them at that size for other environments. (I turned off mipmaps, didn't find sampling though I don't mind, it seems really fast...)

    This one as many layers because of the seats rows.

    I'll use 25 frame/second, it's just convenient, easy to calculate, etc.


    Well well well, seems I have to work on my animation I didn't create the characters yet.

    I guess I'll do it in french first, I'm Belgian American, maybe I'll translate it or firstly subtitle it (I know we can do it with Youtube).


    Thanks a lot guys



  10. #10

    Alpha and opengl

    Hi again,

    Instead of doing a new thread I rather continue here... I'm facing another problem, I'm still struggling with alpha layers...
    I'm doing the opening theme
    Click image for larger version. 

Name:	Weird Lines.jpg 
Views:	5 
Size:	377.8 KB 
ID:	502658

    Click on it for full size, otherwise you won't see it...
    https://blenderartists.org/forum/att...8&d=1508761925

    1) Black lines aren't smooth with Opengl, it only appears "jaggy" on the glasses and the neck. (Why?)
    2) Also, there's an awful line near the armpit.

    Do I have to work with theses issues? There's no solution?
    On blender game I changed everything to "Alpha clip".

    At least Opengl is really fast, for 10 seconds of animations it takes maybe 10 seconds or less to render, I don't even bother counting rendering time.

    I also had to trick Blender for the fade in/fade out black, instead of using alpha (which seems to don't work), I changed the color material to shadeless black.

    *Oops and I just notice that big mistake, no "e" at the end of ennui...

    [EDIT]

    I realize one weird thing :
    If I click on OPENGL to render the video, it renders all the frames on the folder I told him, though there's the line on the armpit... (jaggy black lines don't bother me that much)

    BUT, If I click on render with OPENGL then click on image>save as image, there's no more line on the armpit!!!

    Aaargh... I won't save every image, it's time consuming...
    Last edited by CurtYoung; 23-Oct-17 at 08:02.



  11. #11
    Member dudecon's Avatar
    Join Date
    Sep 2007
    Location
    Camarillo, CA, USA
    Posts
    239
    You'll have to include an attachment that we can play with to see what's going on here. Could be the texture you're using. Could be the transparency mode, or the sampling.
    In short though, yes, Blender's OpenGL integration is not the best, and you'll therefore fight with oddities like these unless you decide to work around them.
    One thing you can try for transitions between elements is make a "wing" to hide the edge. It's a nasty kludge, but it works for some things.
    Click image for larger version. 

Name:	Wing.png 
Views:	1 
Size:	15.9 KB 
ID:	502686
    Commissions, 3D prints, and Mechanical Engineering. If you appreciate my contributions, support me on Patreon!



  12. #12
    Thanks for the reply!

    For this project, I'll use both render mode I think.
    Sometimes OpenGL works good, when he doesn't, I'll use Blender...

    I compared the rendering time of the opening theme for 100 frames (25/second, so 4 seconds of animation) :
    OpenGL = 37 seconds
    Blender = 2min 29 seconds

    The average time for an animation of 5 minutes :
    OpenGL = 46 minutes
    Blender = 3hours and 6 minutes

    I guess, I'll be max, at 5 hours of render time, it shouldn't be an issue and I'll have better results.

    Though OpenGL is still really interesting for other projects.
    Last edited by CurtYoung; 23-Oct-17 at 15:45.



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •