[Bf-committers] DVCS again

2011-11-18 Thread Micael
Hello

I've been following the discussion about switching to a distributed source
control mechanism, and it's problem associated with binary data. According
to previous chat here on the list, it is not yet decided which way we
should go.

What is the problem with binary data? Is it the big file size or slowness
when checking for diffs?
If big files are the problem, I just found this
http://mercurial.selenic.com/wiki/LargefilesExtension which could help
solve the problem.

-- 
Micael Dias
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Interesting Article

2011-11-18 Thread David Silverman
An older article, but very interesting :
http://www.vidimce.org/publications/lpics/

(Video and paper )
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Blender tangent space calculation

2011-11-18 Thread Eugene Minov
Hi!

I think that I've finished this.


 Don't forget to look in do_multires_bake() in object_bake.c
 It shows you how to add the tangent layer:


Yes, I've figured out how to create DerivedMesh object by Mesh object.
And then I've created the tangent layer in this way.


 // get pointer to the already generated tangents
 pvtangent= DM_get_face_data_layer(dm, CD_TANGENT);


But if mesh don't have a tex-coords, 'pvtangent' anyway is NULL
For this case I weld normals only.

I tried to export a mesh with tangents and normals into my app
and seems that normal map looking correct.

const int iGetNrVerts= data-mface[face_num].v4!=0 ? 4 : 3;

On Thu, Nov 17, 2011 at 8:33 PM, Morten Mikkelsen mikkels...@gmail.comwrote:

 And flush_pixel() shows you how to traverse the buffer.
 Essentially the way it works in blender is there's always 4 of them
 per face whether it's a triangle or a quad.





 On Thu, Nov 17, 2011 at 9:31 AM, Morten Mikkelsen mikkels...@gmail.com
 wrote:

  Don't forget to look in do_multires_bake() in object_bake.c
  It shows you how to add the tangent layer:
 
  float *pvtangent= NULL;
 
  // create tangent vectors if not already created
  if(CustomData_get_layer_index(dm-faceData, CD_TANGENT) == -1)
DM_add_tangent_layer(dm);
 
  // get pointer to the already generated tangents
  pvtangent= DM_get_face_data_layer(dm, CD_TANGENT);
 
 
 
 
 
  On Thu, Nov 17, 2011 at 8:49 AM, Eugene Minov minov@gmail.com
 wrote:
 
  
   The proper way to get the tangent layer can be seen in:
   
   
 
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/editors/object/object_bake.c
  
 
  Okay, I've found a 'multiresbake_get_normal' function for correct
 normals
  calculation.
  I also looked into 'DM_add_tangent_layer' function in:
 
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c
  According to it, the tangent layer is filling by tangents when created.
 So
  I do
  need only to access and welding them and normals?
  That's good if so.
 
  Today I had time to try understand how RNA's works.
  And I almost create and test python interface with collections for faces
  and
  indexed vertices with normals and tangents in it.
  Hopefully soon I'll start welding.
 
  
   If you need a free ultra simple welder there's one here --
   http://jbit.net/~sparky/academic/welder/
   You specify how many floats you have per vertex and it will weld for
  you.
  
 
  Okay, good one, I think I'll use it :)
 
  Thanks!
 
  On Wed, Nov 16, 2011 at 8:43 PM, Morten Mikkelsen mikkels...@gmail.com
  wrote:
 
   Sorry for confusing you here but I think I found a better reference
 for
  you
   since
   you'll be needing the tangents too and you are not supposed to be
  building
   them yourself.
  
   The proper way to get the tangent layer can be seen in:
  
  
  
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/editors/object/object_bake.c
  
   do_multires_bake()
  
   These are being fetched after the line:
  
   float *pvtangent= NULL;
  
  
   These are then read in the function flush_pixel() including the normal
   which is fetched from there using multiresbake_get_normal()
   which as you can see looks a lot like the GetNormal() function
   I pointed you to in DerivedMesh.c.
   Anyway, definitely use this file as your reference. I should have
 shown
  you
   this one from the beginning.
  
   If you need a free ultra simple welder there's one here --
   http://jbit.net/~sparky/academic/welder/
   You specify how many floats you have per vertex and it will weld for
  you.
  
  
  
   On Wed, Nov 16, 2011 at 5:32 AM, Eugene Minov minov@gmail.com
  wrote:
  

 If you can get hold of the dm
 (DerivedMesh)
 on the c side of things then I can show you how to get the
 correct
normals
 and tangents
 and even help you get them welded should you want this.

   
Ok! Sounds good to me :)
   
So right now I in progress of checkout latest svn sources and
 compile
blender. (had problems with net)
Then first of I'll try to create test version of python/C interface.
  I've
not decided yet what names I'll use for it.
And finally will be trying to implement it looking in DerivedMesh.c,
I think that it's realy are a good example.
   
If or when I have a problem, I'll be glad to use your help :)
Many thanks for your kind cooperation!
   
   
   
On Tue, Nov 15, 2011 at 10:41 PM, Morten Mikkelsen 
  mikkels...@gmail.com
wrote:
   
 I don't know anything about Python but if you can get hold of the
 dm
 (DerivedMesh)
 on the c side of things then I can show you how to get the correct
normals
 and tangents
 and even help you get them welded should you want this.




 On Tue, Nov 15, 2011 at 10:43 AM, Eugene Minov 
 minov@gmail.com
  
 wrote:

  Yes, I absolutely agree, hard faces obviously must be 

Re: [Bf-committers] Blender tangent space calculation

2011-11-18 Thread Eugene Minov
Sorry for extra line :)

I wanted to ask about this line:
const int iGetNrVerts= data-mface[face_num].v4!=0 ? 4 : 3;

I think 'iGetNrVerts' may be incorrect with some cases when there is four
vertices per face but the last one is points to first indexed vertex.
Or there is no way that last index points to zero?

On Fri, Nov 18, 2011 at 9:48 PM, Eugene Minov minov@gmail.com wrote:

 Hi!

 I think that I've finished this.

 
  Don't forget to look in do_multires_bake() in object_bake.c
  It shows you how to add the tangent layer:
 

 Yes, I've figured out how to create DerivedMesh object by Mesh object.
 And then I've created the tangent layer in this way.

 
  // get pointer to the already generated tangents
  pvtangent= DM_get_face_data_layer(dm, CD_TANGENT);
 

 But if mesh don't have a tex-coords, 'pvtangent' anyway is NULL
 For this case I weld normals only.

 I tried to export a mesh with tangents and normals into my app
 and seems that normal map looking correct.

 const int iGetNrVerts= data-mface[face_num].v4!=0 ? 4 : 3;

 On Thu, Nov 17, 2011 at 8:33 PM, Morten Mikkelsen mikkels...@gmail.comwrote:

 And flush_pixel() shows you how to traverse the buffer.
 Essentially the way it works in blender is there's always 4 of them
 per face whether it's a triangle or a quad.





 On Thu, Nov 17, 2011 at 9:31 AM, Morten Mikkelsen mikkels...@gmail.com
 wrote:

  Don't forget to look in do_multires_bake() in object_bake.c
  It shows you how to add the tangent layer:
 
  float *pvtangent= NULL;
 
  // create tangent vectors if not already created
  if(CustomData_get_layer_index(dm-faceData, CD_TANGENT) == -1)
DM_add_tangent_layer(dm);
 
  // get pointer to the already generated tangents
  pvtangent= DM_get_face_data_layer(dm, CD_TANGENT);
 
 
 
 
 
  On Thu, Nov 17, 2011 at 8:49 AM, Eugene Minov minov@gmail.com
 wrote:
 
  
   The proper way to get the tangent layer can be seen in:
   
   
 
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/editors/object/object_bake.c
  
 
  Okay, I've found a 'multiresbake_get_normal' function for correct
 normals
  calculation.
  I also looked into 'DM_add_tangent_layer' function in:
 
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c
  According to it, the tangent layer is filling by tangents when
 created. So
  I do
  need only to access and welding them and normals?
  That's good if so.
 
  Today I had time to try understand how RNA's works.
  And I almost create and test python interface with collections for
 faces
  and
  indexed vertices with normals and tangents in it.
  Hopefully soon I'll start welding.
 
  
   If you need a free ultra simple welder there's one here --
   http://jbit.net/~sparky/academic/welder/
   You specify how many floats you have per vertex and it will weld for
  you.
  
 
  Okay, good one, I think I'll use it :)
 
  Thanks!
 
  On Wed, Nov 16, 2011 at 8:43 PM, Morten Mikkelsen 
 mikkels...@gmail.com
  wrote:
 
   Sorry for confusing you here but I think I found a better reference
 for
  you
   since
   you'll be needing the tangents too and you are not supposed to be
  building
   them yourself.
  
   The proper way to get the tangent layer can be seen in:
  
  
  
 
 https://svn.blender.org/svnroot/bf-blender/trunk/blender/source/blender/editors/object/object_bake.c
  
   do_multires_bake()
  
   These are being fetched after the line:
  
   float *pvtangent= NULL;
  
  
   These are then read in the function flush_pixel() including the
 normal
   which is fetched from there using multiresbake_get_normal()
   which as you can see looks a lot like the GetNormal() function
   I pointed you to in DerivedMesh.c.
   Anyway, definitely use this file as your reference. I should have
 shown
  you
   this one from the beginning.
  
   If you need a free ultra simple welder there's one here --
   http://jbit.net/~sparky/academic/welder/
   You specify how many floats you have per vertex and it will weld for
  you.
  
  
  
   On Wed, Nov 16, 2011 at 5:32 AM, Eugene Minov minov@gmail.com
  wrote:
  

 If you can get hold of the dm
 (DerivedMesh)
 on the c side of things then I can show you how to get the
 correct
normals
 and tangents
 and even help you get them welded should you want this.

   
Ok! Sounds good to me :)
   
So right now I in progress of checkout latest svn sources and
 compile
blender. (had problems with net)
Then first of I'll try to create test version of python/C
 interface.
  I've
not decided yet what names I'll use for it.
And finally will be trying to implement it looking in
 DerivedMesh.c,
I think that it's realy are a good example.
   
If or when I have a problem, I'll be glad to use your help :)
Many thanks for your kind cooperation!
   
   
   
On Tue, Nov 15, 2011 at 10:41 PM, Morten Mikkelsen 
  mikkels...@gmail.com
wrote:
   
 I don't know 

Re: [Bf-committers] Cycles movement blur

2011-11-18 Thread Nathan Vegdahl
It would be nice if this was built-in to how cycles worked, rather
than a hack that you have to do manually.

And even then, it's more a stop-gap solution.  Ideally we'll
(eventually) want randomly sampled motion blur, to eliminate strobing
and to let you see the full motion blur (even if noisy) early in the
render, so that you can tweak it in the viewport without having to do
the full render (similar to DoF right now).

Of course, I don't expect that terribly soon. ;-)  Motion blur,
particularly deformation motion blur, is a non-trivial problem in
raytracing, if I understand it correctly.

--Nathan


On Tue, Nov 15, 2011 at 2:52 PM, Carsten Wartmann c...@blenderbuch.de wrote:
 It is already possible to get this kind of motion blur in cycles. Switch to 
 blender internal and use the sampled motion blur panel to setup. Then back in 
 cycles you get mblur samples. Combine with an animation of the seed value and 
 lower the cycles samples by factor of mblur samples. As result you get mblur 
 with nearly no more extended render time.

 Carsten



 Knapp magick.c...@gmail.com schrieb:

I was just thinking today that Cycles could do motion blur without
taking a big CPU hit. I don't know much about all this so I bet my
ideas is wrong or old but I thought I would post it just in case.

When we do animation the computer calculates tweens and moves stuff
for us. It does this once per frame. Cycles does many render cycles
per frame. It struck me today that if at each cycle pass you move the
object you would get a blur effect. I was also thinking that you might
move it every 100 out of a 1000 pass to get interesting stutter
effects. I look forward to hearing if  my idea was good or only trash.
BTW I would love to see a pause on the main render. Cycles eat my CPU
alive and does not let me do much in the background. A nice/slow
button might be good too but I am sure I am not the first to say this.

Thanks for all the really cool work!! I love cycles, dynamic paint,
motion tracking and ocean sim! All the other stuff is more in the
background but I am sure I will be loving it too once I find it!

--
Douglas E Knapp

Creative Commons Film Group, Helping people make open source movies
with open source software!
http://douglas.bespin.org/CommonsFilmGroup/phpBB3/index.php

Massage in Gelsenkirchen-Buer:
http://douglas.bespin.org/tcm/ztab1.htm
Please link to me and trade links with me!

Open Source Sci-Fi mmoRPG Game project.
http://sf-journey-creations.wikispot.org/Front_Page
http://code.google.com/p/perspectiveproject/
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers

 --
 Mühsam auf dem Telefon getippt :-)
 ___
 Bf-committers mailing list
 Bf-committers@blender.org
 http://lists.blender.org/mailman/listinfo/bf-committers

___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Blender tangent space calculation

2011-11-18 Thread Morten Mikkelsen

 I wanted to ask about this line:
 const int iGetNrVerts= data-mface[face_num].v4!=0 ? 4 : 3;

 Or there is no way that last index points to zero?


Correct, this is how blender does it everywhere in its code-base.
Super glad to hear you're getting useful results! Be sure to submit a patch
for review.
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] DVCS again

2011-11-18 Thread Lars Krueger
There is something similar for git too: 

http://git-annex.branchable.com/

 Original-Nachricht 
 Datum: Fri, 18 Nov 2011 17:37:40 +
 Von: Micael kam1k...@gmail.com
 An: bf-blender developers bf-committers@blender.org
 Betreff: [Bf-committers] DVCS again

 Hello
 
 I've been following the discussion about switching to a distributed source
 control mechanism, and it's problem associated with binary data. According
 to previous chat here on the list, it is not yet decided which way we
 should go.
 
 What is the problem with binary data? Is it the big file size or slowness
 when checking for diffs?
 If big files are the problem, I just found this
 http://mercurial.selenic.com/wiki/LargefilesExtension which could help
 solve the problem.
 
 -- 
 Micael Dias
 ___
 Bf-committers mailing list
 Bf-committers@blender.org
 http://lists.blender.org/mailman/listinfo/bf-committers

-- 
Dr. Lars Krueger


Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Please help me debugging

2011-11-18 Thread Rainer Hohne
Oh dear, well, I used 2.6.5 for running the script - didn't know that that
would make such a difference. With python 3.2 it works just fine - finally!
Thank you for your help Campbell !

Rainer
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Please help me debugging

2011-11-18 Thread Campbell Barton
Python3 is default on my system so I forget about this sometimes.
Glad to hear its working (though there _was_ a real bug with utf8
paths I found because of your mail).

Added checks for python3 r41980 so this doesn't happen to anyone else.

On Sat, Nov 19, 2011 at 10:51 AM, Rainer Hohne raho...@googlemail.com wrote:
 Oh dear, well, I used 2.6.5 for running the script - didn't know that that
 would make such a difference. With python 3.2 it works just fine - finally!
 Thank you for your help Campbell !

 Rainer
 ___
 Bf-committers mailing list
 Bf-committers@blender.org
 http://lists.blender.org/mailman/listinfo/bf-committers




-- 
- Campbell
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] UTF8 text input status (on OS X)

2011-11-18 Thread Dalai Felinto
Hi Brecht,
Tested the patch here it it works great.

To test it from any OSX:
option+e+a = á
option+i+o = ô

The only downside is that does not address the problem of korean,
japanese, ... probably because of the problems presented by Alex.
It's already an improvement though.

--
Dalai
(a related OSX issue I have here: hold space and press backspace in
the Python Console. It will produce a lot of the 'square' chars).

2011/11/1 Campbell Barton ideasma...@gmail.com:
 On Wed, Nov 2, 2011 at 1:08 PM, Alexandr Kuznetsov kuzsa...@gmail.com wrote:
 Hi


 c) Typing with dead keys (e.g. ¨ + o = ö) didn't work for me. I
 managed to get it working using NSTextInput, patch here if people want
 to test, I'm not very confident that this doesn't break something, so
 some testing would be great: http://www.pasteall.org/25983/diff


 I think this problem is much bigger here. The dead keys are typed before a
 real key, but the composed UTF chars are store in the reverse order. Even
 if we have a  buffer for that, it won't solve many problems. For example
 Chines and Japanese inputs require more closer interaction with the text,
 rather than simply typing character. Different input methods exist for
 different languages which are natively supported by OS. But because Blender
 doesn't use native text fields, they must be  implemented by ourselves. For
 example, MS Pinpyin replaces typed latin characters into chinese when the
 whole word is complete. Therefore Blender must expose more text interface
 to Ghost. Ghost must be able to get the current line, cursor, visual
 position of editing text and then push edited text back. I probably can
 take care of this project, but it won't be until end of December. Plus I
 don't know any hieroglyphics languages.
 There is multiple cross platform implementations of IME. When we were
 discussing this with JesterKing, he proposed to use SDL. But although it
 might have ready solution, it is probably hard to integrate in our Ghost,
 as all SDL must have its own loop.
 (Anyway, when IME will be implemented, we might get speech recognition and
 handwriting for free!!)

 If you want to test SDL text input you could try WITH_GHOST_SDL to
 build ghost against SDL rather then x11/win/cocoa.
 SDL1.3 has a Text Input event, but the text editing state needs to be
 set first so you're right that ghost would need to be aware and have
 some equivalent to SDL_StartTextInput / SDL_StopTextInput, rather then
 just passing events like it does now.

 a) Uppercases character umlaut (e.g. Ü) are not rendered correctly in
 the user interface, they do show in 3D text and the text editor.
 Appears to be a text rendering problem that would happen on all
 platforms?


 Yes. It is a problem on Windows also. Moreover it is a problem exist with
 precomposed characters. Maybe it is problem of clipping? Anyway, maybe it
 is good time to switch char render library as was discussed earlier to
 support bidirectional text. Maybe there are more latent problem with the
 rendering of hard characters like Chinese or multiple compositions.

 Best Regards,
 Alex

 --
 - Campbell
 ___
 Bf-committers mailing list
 Bf-committers@blender.org
 http://lists.blender.org/mailman/listinfo/bf-committers

___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers