Tuesday, 2007-04-24

*** Pseudonym has joined #Aqsis00:18
*** joeedh_class has joined #aqsis00:26
*** joeedh_class is now known as joeedh00:26
joeedhhi.  how is deep shadow maps in aqsis going to deal with the fact that pixar patented the method?00:27
joeedhI ask this because I have much the same problem with blender, where like aqsis I got a GSoC grant to implement them.  my "circumvention" is basically using a raw abuffer instead of visibility functions, on the assumption that since blender doesn't have volumetrics it can get away with such a brute-force method.00:28
joeedhnaturally this increases the memory usage, thus why part of my proposal is also implementing a tiling disk cache system.00:29
PseudonymWhat exactly did Pixar patent?00:30
joeedhhttp://graphics.stanford.edu/papers/deepshadows/00:31
PseudonymThat's not what I asked.00:31
Pseudonym:-)00:31
joeedhdeep shadow maps00:31
PseudonymExactly what is patented?00:31
PseudonymThere's prior art in deep framebuffers from the 80s.00:32
PseudonymThey can't have patented the whole thing.00:32
joeedhiirc I think its the technique of using piecewise linear visibility functions rather then normal abuffers.00:32
* joeedh looks it up00:33
* Pseudonym looks it up too00:33
PseudonymCrap.00:36
PseudonymHere's a patent on something I worked out in 1998.00:36
PseudonymFiled in 2000.00:36
joeedhwhat was it?00:36
PseudonymCrack stitching.00:36
PseudonymActually, I think I was at Dot C when I worked it out.00:37
PseudonymNo, it was just before.00:37
joeedhwell at least you can claim prior art :)00:37
PseudonymExcept it's not published!00:37
PseudonymHa.00:38
PseudonymThe deep shadow patent references the Entropy (now Gelato) sampling algorithm as prior art.00:38
joeedhlol00:39
PseudonymThe Entropy algorithm is pretty clever, actually.00:39
* joeedh is going to have fun trying to figure out how to correctly create mipmaps when storing abuffer samples instead of visibility functions :/00:39
joeedhhow does it work?00:39
PseudonymLet's ignore motion blur and DoF for a moment00:40
PseudonymJust consider a bunch of micropolygons which fall over an area.00:40
PseudonymYou want to integrate over the area.00:40
PseudonymThe "right" answer is to do a fully polygon clip.00:40
PseudonymThat way, you know exactly what bits of what polygon fall in the area.00:40
PseudonymObviously that's too expensive.00:41
PseudonymThe 1986 Pixar solution is to represent the area as points.00:41
PseudonymAnd just sample the points.00:41
PseudonymEntropy droped a whole bunch of lines over the area.00:41
PseudonymAnd represented the "polygons" as piecewise linear functions that fall on the area.00:42
PseudonymThe reason being that piecewise linear functions are easier to clip than piecewise bilinear polygons.00:42
joeedhoh interesting.00:43
joeedhthe lines were just the polygon edges?00:43
PseudonymNo, the lines are pre-chosen.00:43
PseudonymMuch like the points in stochastic z buffering.00:44
joeedhoh ok.00:45
* joeedh draws a diagram00:45
PseudonymDraw a line.00:45
PseudonymThen draw a polygon which intersects it.00:45
PseudonymThe bit that falls on the line is itself a line.00:45
PseudonymPossibly more than one if the polygon is concave.00:45
joeedhah I get it now.  I vaguely remember reading about this a while back.00:46
PseudonymRight.;00:49
PseudonymOK, now I have no idea how to read patents.00:50
PseudonymBut I think the best answer is "ignore it".00:50
PseudonymWe don't know exactly what's patented.00:51
PseudonymBut almost all of it is a simple extension of previously published materials.00:51
PseudonymAnd the paper doesn't declare a patent declaration.00:51
PseudonymWho's doing DSM?  Zac?00:53
PseudonymWhere's he located?00:53
PseudonymBasically, DSM == shadow map + deep framebuffer.00:54
PseudonymNeither of which has a current patent on it.00:54
PseudonymIf it's the optimisation that's the deal, then we'll come up with a different optimisation method.00:54
PseudonymI thought of a few.00:54
joeedhwell, what's different is rather then storing multiple samples were pixel, they store a piecewise linear function.00:55
joeedhwhich (it seems to me) it the core of their patent.00:55
PseudonymSo let's make it piecewise quardratic.00:55
joeedheh. . .would that really help?00:55
PseudonymAnd let's do a global minimisation instead of a local one.00:55
PseudonymYou also have to remember that Aqsis is mostly outside the US.00:56
PseudonymIn places where code isn't patentable.00:56
joeedhthey use the term visibility function, and piecewise linear is almost treated like a suggested implementation detail.00:56
joeedhPseudonym: so is blender. . .yet sadly I live *in* the U.S.00:56
PseudonymWhich project are you working on?00:57
joeedhdeep shadow maps in blender.00:57
joeedh:)00:57
PseudonymAh.00:57
PseudonymClearly Blender should use Aqsis.  Duh!00:58
Pseudonym:-)00:58
*** cgTobi sets mode: +vvvv blend_dem joeedh Pseudonym timo201:03
joeedhheh yeah.  :) lol01:04
PseudonymThe fact is, Pixar doesn't use its patents offensively.01:05
PseudonymAnd neither does Disney.01:05
PseudonymSo even on the off chance that we infringe...01:06
joeedhwell, I did hear rumours about bmrt01:06
PseudonymBMRT voluntarily dropped a feature.01:06
joeedheh that isn't how I hear it happened.01:06
PseudonymYou mean the lawsuit?01:07
PseudonymI think it's more about trade secret in that case.01:07
joeedhwell I mean the many people who tell me pixar killed it.01:07
joeedhthough now I remember the details, you might be right.01:07
PseudonymYes, I agree01:07
PseudonymPixar dropped the patent claims and instead alleged misappropriation of trade secrets.01:08
PseudonymI suspect that Pixar also waited until Entropy was bought by nVIDIA (the deal was done, just not announced) to sue.01:09
PseudonymDeeper pockets.01:09
joeedhsounded kindof sleezy to me :/01:11
PseudonymYeah, a lot of people were severely pissed off.01:14
joeedhI heard the bmrt ray tracing core was cool.01:18
joeedhhrm.  someone actually managed to combined deep shadow maps and penumbra maps.  the papers a little confusing though, as the technique is heavily geared toward real-time use on gpus.01:24
joeedhhttp://www.iro.umontreal.ca/labs/infographie/papers/St-Amour-2005-PDSM/pdsm.pdf01:25
*** joeedh is now known as joeedh_sleep01:42
*** Yomogi-aren has joined #aqsis02:10
|rt|anyone here ever install cgkit on ubuntu02:17
* cgTobi didn't.02:17
cgTobiBut what's the problem?02:17
|rt|just trying to figure out the dependancies02:17
|rt|was hoping that someone would know a repository that had cgkit in it :)02:18
cgTobiphew...good question02:19
cgTobiI don't know one, sorry02:20
*** cgTobi sets mode: +v Yomogi-aren02:20
|rt|there's alot of boost releated packages if I do apt-cache boost02:20
|rt|er apt-cache seach boost02:20
|rt|any idea what would satify the boost requirement for cgkit?02:21
|rt|libboost-dev maybe?02:21
|rt|there's also libboost-python-dev and libboost-python1.33.102:22
cgTobiI think libboost-python02:22
cgTobimaybe dev, but I am now sure02:22
cgTobiif you want to build it yourself probably dev02:22
|rt|well i don't see a way to get it on linux without building it02:23
cgTobiprobably now02:23
|rt|if I could find a bin somewhere that would probably simplify things02:23
cgTobinot02:23
cgTobibuilding cgkit isn't that bad IIRC02:23
cgTobipackaging is another story02:23
cgTobiI tried to do cgkit rpms02:24
cgTobiand it was quite a pain02:24
|rt|bummer02:24
|rt|cgkit is much easier to deal with in windows02:24
|rt|which is odd02:24
cgTobiis it? I never used it on windows02:25
|rt|there's an installer for windows02:25
|rt|binary02:25
cgTobiwell,  that's the old linux problem ;) no unified way to install except by (make; make install) ;-)02:26
|rt|yeah i guess so02:27
|rt|i was spoiled by gentoo which has cgkit in their repos02:27
|rt|cgkit works for gentoo since everything is from source i guess02:27
*** joeedh_sleep has quit IRC02:33
*** Compaq_Owner has joined #aqsis02:39
*** joeedh_sleep has joined #aqsis02:39
|rt|libboost-dev got me a bit farther02:40
|rt|looks like it's complaining about missing gl libs now02:40
*** blend_dem has quit IRC02:49
cgTobigl libs? let me take a look at my config02:53
|rt|i think i got it all now02:53
|rt|compling02:53
cgTobioh, ok than. good luck02:53
|rt|seems to be working :P03:02
cgTobicool03:02
|rt|well this seems to work03:16
|rt|#!/usr/bin/python03:16
|rt|import cgkit03:16
|rt|print cgkit.cgkitinfo.version03:16
|rt|so i think i'm good to go03:17
*** cgTobi sets mode: +v joeedh_sleep03:17
cgTobisweet :)03:17
*** Yomoyomo has joined #aqsis03:26
*** Yomogi-aren has quit IRC03:27
*** Yomogi-aren has joined #aqsis03:42
*** Yomoyomo has quit IRC03:43
cgTobiI'm off to bed03:45
cgTobicya later03:45
PseudonymNight.03:45
*** cgTobi sets mode: +v Yomogi-aren03:45
*** Yomogi-aren has quit IRC04:01
*** joeedh_sleep is now known as joeedh04:39
*** joeedh is now known as joeedh_sleep2805:23
*** render has joined #aqsis07:50
*** AlexK has joined #aqsis08:08
*** AlexK has joined #aqsis08:08
*** Pseudonym has quit IRC08:12
tcolgatemornin' all10:19
*** cgTobi has quit IRC10:30
*** Anteru has joined #aqsis10:59
*** Anteru has quit IRC11:03
*** Anteru has joined #aqsis11:14
*** Anteru has quit IRC11:17
*** Anteru has joined #aqsis11:24
*** Joron has joined #Aqsis11:33
AnteruHi Michel11:36
AnteruYour latest changes to bake2tif broke VC8, mixed code and declaration ;)11:36
Joronvc8 could not tolerate in a C file; oh well I will change.11:41
Anteruit's fixed already11:42
Anteruno worries11:42
Joronit missed stdlib.h ?11:43
Anteruno, the char* pt = NULL; came after some code11:43
Joronthanks11:44
JoronI don't normally use vc8, only mingw, and gcc on macosx.11:44
Joronsomehow vc8 version of aqsis doesn't work for me.11:44
AnteruI thought GCC captures it with -ansi or -strict ...11:45
Anteru^ What's the problem, I just built successfully with VC811:45
JoronIt doesn't run at all; it crashes at start-up.11:45
AnteruHmm, what error?11:45
AnteruCan you hook a debugger, or does it crash before user code starts?11:46
Joronsomething like libaqsis.dll is not legal manifest....11:46
AnteruThat should be fixed11:46
Anteruwe're embedding the manifests11:46
AnteruThis was a problem but should not appear any more11:47
JoronI did not have the problem than I synced I got the problem... then I went to a rage; I delete all the directories ; resync same thing (I remvoe all my examples on nt without realizing)... recompiling, sync svn, still the same thing.11:48
Anteruwhich revision did you try?11:49
Joronsomething like 2 weeks ago.11:49
AnteruHmm, maybe you just got a revision before the manifest stuff was fixed11:50
AnteruAfter all, I have it /working here/ with OpenEXR etc.11:50
Anterurunning >90% of the RTS11:50
Joronwhen the manifest was fixed I got the problem; I did not have any problem before... somehow the fix included something from svn to get the manifest created... I needed at that time to sync svn too but it did not solve anything... I switch back to mingw.11:51
AnteruHmm.11:52
Joronwhich version of svn did you have ?11:52
AnteruI have checked it with 980 a few minutes ago11:52
AnteruC:\Dev\Aqsis\aqsis\output\bin>aqsis --version11:53
Anteruaqsis version 1.3.011:53
Anterucompiled Apr 24 2007 12:21:2111:53
JoronIt runs without problem ?11:53
AnteruObviously ^11:53
JoronI will try again this morning later; I still did not like the fact you remove fltk vc8 libraries.11:54
AnteruJust a moment11:55
Anteru^^ The FLTK binaries are different to mine ...11:55
Anteruhttp://anteru.net/temp/aq.png11:55
AnteruI'm not sure they are 100% compatible11:56
Joronconfigure you aqsis/scons to use to a different directory then.11:57
Anteruor we could check them in with the full compiler version11:57
Anterui.e. vc8_14.00.7211:57
JoronWhat I don't get it is you remove the fltk library for teh rest of us which are not interessted to compile even the fltk.11:58
Joronvc8_sp1, vc8_sp2, vc8,...11:58
AnteruI wanted to avoid problem with SP1 users using FLTK from the repository and having a possibly broken build11:58
Anterufor now, you can simply check out an old revision with libs12:01
AnteruI could check in OpenEXR libs with SP1 then12:02
JoronI could12:03
AnteruI'd just suggest we use something like vc8_build number at least to avoid any problems12:04
Joronvc8_sp112:04
Joron?12:04
AnteruDo you have a warning free OpenEXR build?12:05
AnteruI can check in the OpenEXR SP1 hand made one now12:05
JoronThat I don't remember since it has been awhile I touch exr.12:05
AnteruI'll check in VC8_SP1 libs then12:05
Anteruopenexr is 26.4 mib ...12:08
Anterucan take a while12:08
Anteru6 of 24 mib checked in12:12
Anterudone12:13
Anterufeel free to try with OpenEXR and FLTK12:13
JoronIs VC8 always faster than the el-cheapo mingw/gcc ?12:14
AnteruThink so12:15
AnteruI did just a quick try and on that particular scene, MSVC was faster, but YMMV12:15
Joronwhat does mean Ymmv ?12:16
AnteruYour mileage may vary12:17
JoronThe only thin I know is vc8 is faster than vc6 but necessary than vc7.1  and vc8 the math are faster than anything I could come up.12:19
Jorons/necessary/not necessary/12:19
Anteruthe interprocedural optimization step gives a 30% boost over VC8 stock :)12:20
Anterucya, battery empty12:33
*** Anteru has quit IRC12:34
*** cgTobi has joined #Aqsis12:45
*** ChanServ sets mode: +o cgTobi12:45
cgTobihi all12:45
*** cgTobi sets mode: +vvv AlexK Joron render12:46
JoronHello Tobias12:46
JoronI got to go to work bye bye.12:46
*** Joron has quit IRC12:47
*** ShortWave is now known as ShortWaveWrk14:00
*** renderguy has joined #aqsis14:45
renderguyAfternoon all.14:45
*** cgTobi sets mode: +v renderguy14:57
cgTobihi Leon14:57
*** Anteru has joined #aqsis15:31
renderguyFurther to Andrew's and Joe's DSM 'Patent' discussion earlier, the following resource may be interesting - http://www.freepatentsonline.com/result.html?query_txt=Pixar%20(Emeryville,%20CA)16:03
cgTobiHi Leon16:04
cgTobiany success with scons yet?16:04
renderguycgTobi: Didn't get a chnace to do anything last night, but should tonight.16:05
renderguy^^ Actually, that patent search is quite interesting.16:07
renderguy... in general, not just the Pixar stuff.16:09
* renderguy is looking forward to seeing some MakeHuman 'Skin' tests from the MH team.16:44
* Anteru is looking forward for the test human ;)16:46
renderguyAnteru: Didn't we, once, have MSVC6 libs for OpenEXR?16:49
*** AlexK has quit IRC16:49
AnteruNot really16:50
AnteruOpenEXR does not compile with VC616:50
renderguyAnteru: K, just my bad memory then.16:51
AnteruMight be that it did compile some years ago16:52
renderguyGotta shoot, laterz.17:22
*** renderguy has left #aqsis17:22
*** AlexK has joined #aqsis17:51
*** ShortWave has joined #aqsis18:48
*** Anteru has quit IRC18:54
*** Anteru has joined #aqsis18:59
*** AlexK has quit IRC20:04
AnteruShortWaveWrk: Around?20:38
AnteruShortWave: Around?20:38
ShortWaveI'm aroud20:48
ShortWave'sup?20:48
ShortWaveerr20:48
ShortWavearound20:48
ShortWavesorta20:48
*** cgTobi sets mode: +vv Anteru ShortWave21:04
cgTobihi Bobby21:05
AnteruAhh!21:15
AnteruShortWave: Hiho21:16
AnteruShortWave: Query21:16
ShortWaveHey tobi21:21
ShortWavelong time no talk21:21
ShortWave'sup?21:21
|rt|hey ShortWave21:35
cgTobiyeah, quite some time. Well, not much. Still in London. Still working. So everything is fine from my side. How about you?21:37
*** Anteru has quit IRC22:33
*** ShortWave has quit IRC22:37
*** cgTobi has quit IRC22:54
*** cgTobi has joined #Aqsis23:04
*** ChanServ sets mode: +o cgTobi23:04

Generated by irclog2html.py 2.5 by Marius Gedminas - find it at mg.pov.lt!