00:00.23 |
brlcad |
unless you just happen to be using an osl
shader that returns random reflections |
00:00.50 |
brlcad |
otherwise, it sounds like something they's
just default to .. but isn't actually necessary -- should be able
to converge much faster |
00:01.16 |
brlcad |
otherwise it sounds like it basically acting
like a generalized path tracer |
00:01.28 |
brlcad |
otherwise ;) |
00:01.42 |
kunigami_ |
I think it's a path tracer |
00:01.53 |
brlcad |
it is and it isn't ;) |
00:02.02 |
brlcad |
isn't supposed to be a generalized shader
system |
00:02.22 |
brlcad |
meaning you could use it as a path tracer or
not |
00:02.42 |
kunigami_ |
hmm makes sense |
00:02.42 |
brlcad |
perhaps it just defaults to path
tracing |
00:02.55 |
``Erik |
accidental negative? it IS supposed to be
generalized, no? so'z it can be path trace, radiosity, phong,
etc |
00:03.26 |
brlcad |
"isn't it supposed to be" |
00:04.06 |
brlcad |
or s/isn't/it's/ :) |
00:04.06 |
``Erik |
ah, s/t/ t it/;s/$/?/ |
00:04.34 |
kunigami_ |
the thing is that I based my code in a example
and maybe there it was implementing a path tracer |
00:05.00 |
kunigami_ |
I wasn't aware that this could be just a
"mode" |
00:05.07 |
``Erik |
kunigami: sounds so, is there a basic phong
OSL script you can slap in there? that'd be a lot quicker on the
tests and be a pretty close relative to the current 'default' of
rt |
00:05.13 |
brlcad |
so then we (you) have some homework to figure
out ;) |
00:06.04 |
``Erik |
would think pixdiffs of the
current C phong/plastic vs the OSL phong would be
interesting |
00:06.23 |
brlcad |
for starters, making sure you're working with
rt from here forward, not a standalone so we make sure the
integration migrations towards something production usable, even if
it's the path tracer |
00:06.40 |
brlcad |
I don't think OSL ships phong by
default |
00:07.22 |
``Erik |
any guess on how difficult it'd be to write?
I'd hope trivial... |
00:08.01 |
brlcad |
hm, mildly related discussion:
http://groups.google.com/group/osl-dev/browse_thread/thread/3350532577b3f8b7/657b1956e545b5ba?lnk=raot |
00:08.30 |
kunigami_ |
I think there's a implementation of a phong
shader, but if I remember well, it wasn't much different from the
diffuse |
00:08.39 |
kunigami_ |
let me try here |
00:09.52 |
brlcad |
hates it when he searches for
some topic like this and the top hits are our own irc log
discussions |
00:10.35 |
brlcad |
so phong() is an OSL function |
00:10.45 |
brlcad |
along with cooktorrance() |
00:10.52 |
brlcad |
and a few others |
00:11.23 |
``Erik |
ok, so we do have the theoretical opportunity
for a 1:1 comparison of our own shader system vs osl |
00:11.57 |
brlcad |
still unclear how you drive the phong
reflectance/specular rays |
00:13.10 |
``Erik |
if push comes to shove, we SHOULD be able to
re-implement our interpretation in osl, I'd hope? |
00:13.30 |
brlcad |
it's not that |
00:13.39 |
brlcad |
librt is still the one shooting rays and
managing geometry |
00:13.55 |
brlcad |
so librt fires, hits an osl surface, calls
into osl to figure out what to do |
00:14.01 |
``Erik |
*shrug* either way, hasta luego, see ya'll
tomorrie :) |
00:14.15 |
brlcad |
then it needs to fire more rays .. how it does
that isn't clear to me |
00:15.41 |
brlcad |
this should be like a "chapter 1" or
intro-to-osl detail spelled out somewhere |
00:18.28 |
brlcad |
aha, language spec talks about it
somem |
00:19.04 |
brlcad |
"Effects that would ordinarily require
explicit ray tracing, such as reflection and refraction, are simply
part of the radiance closure and look like any other BSDF |
00:21.07 |
brlcad |
mm, getting the gist |
00:21.11 |
brlcad |
kunigami_: so I'll have to read through this
some more tonight, but I think the first step is to not gang off
the -H option since that fires multiple primary rays ... |
00:23.21 |
brlcad |
very expensive |
00:23.28 |
brlcad |
do something trivial like
getenv(LIBRT_OSL_SAMPLES) instead of a command line option and use
that parameter to toggle how many internal osl samples it needs to
acquire per ray |
00:24.27 |
brlcad |
should shave massive amounts of time since it
doesn't need to rewalk the spatial partitioning, and still give the
same resulting picture |
00:25.17 |
kunigami_ |
ah I was just asking that. ok, so going back
to my first implemented hypersampling |
00:25.34 |
brlcad |
we can tie it to command-line options later if
it all gets working cleanly |
00:25.52 |
brlcad |
it *shouldn't* need to re-call
rt_shootray() |
00:26.08 |
brlcad |
the ray hit is the same for 1 sample as it was
for 1 million |
00:56.40 |
CIA-62 |
BRL-CAD: 03kunigami * r45549
10/brlcad/trunk/src/liboptical/sh_osl.cpp: |
00:56.40 |
CIA-62 |
BRL-CAD: added back hypersampling right on
sh_osl instead of using the -H parameter. It's |
00:56.40 |
CIA-62 |
BRL-CAD: much less expensive since we dont
need to re-calculate the hit point which, in |
00:56.40 |
CIA-62 |
BRL-CAD: the end, will be the same for all
samples. It reads the number of samples from |
00:56.40 |
CIA-62 |
BRL-CAD: an environment variable, which is
better than having a hardcoded value |
01:31.05 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.132.140) |
01:37.19 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
01:42.45 |
brlcad |
kunigami_: there are several items in your
nsamples loop there that do not change across loop iterations --
should pull them out so they're only computed once |
02:01.29 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.152.125) |
02:06.32 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
02:11.35 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.148.37) |
03:03.39 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.149.58) |
03:03.39 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
03:07.41 |
CIA-62 |
BRL-CAD: 03bhinesley * r45550
10/brlcad/trunk/src/libged/edit.c: |
03:07.41 |
CIA-62 |
BRL-CAD: Cut down on a lot of duplication.
Fixed a few issues with subcmd arg helper |
03:07.41 |
CIA-62 |
BRL-CAD: functions (and most are enabled/used
now). ged_edit() generic subcommand |
03:07.41 |
CIA-62 |
BRL-CAD: argument parsing is nearly done.
Still a WIP. Some option combinations are |
03:07.41 |
CIA-62 |
BRL-CAD: accepted that shouldn't be. It is
crashing right now, too. That is to be |
03:07.42 |
CIA-62 |
BRL-CAD: expected, as it needs
edit_str_to_arg() to work properly, and that is |
03:07.43 |
CIA-62 |
BRL-CAD: incomplete/needs some
modifications. |
03:18.01 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.132.193) |
03:18.01 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
03:34.20 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.157.12) |
03:55.43 |
*** join/#brlcad Stattrav
(~Stattrav@117.202.18.126) |
03:55.43 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
04:00.42 |
*** join/#brlcad Stattrav_
(~Stattrav@117.202.16.214) |
04:05.44 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
04:25.44 |
*** join/#brlcad Stattrav_
(~Stattrav@117.202.23.44) |
04:37.55 |
*** join/#brlcad Stattrav
(~Stattrav@117.202.24.28) |
04:37.55 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
04:55.29 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.156.5) |
04:55.29 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
05:00.28 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.146.128) |
05:05.26 |
*** join/#brlcad Stattrav
(~Stattrav@117.202.28.81) |
05:05.27 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
05:16.45 |
*** join/#brlcad Stattrav_
(~Stattrav@117.202.22.242) |
05:24.24 |
CIA-62 |
BRL-CAD: 03Sean 07http://brlcad.org * r0
10/wiki/Special:Log/upload: uploaded a new version of
"[[Image:Industry Diagram.pdf]]": Fifth revision of the BRL-CAD
Industry Diagram. |
05:27.32 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.159.51) |
05:27.33 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
05:29.15 |
brlcad |
starseeker: care to try another attempt at
converting the diagram to an open format? :) |
05:30.05 |
brlcad |
been a few years, better fonts, hopefully
better rendering |
05:31.10 |
*** join/#brlcad yukonbob
(~bch@S010600235a187d92.ok.shawcable.net) |
05:31.18 |
yukonbob |
hello, #brlcad :) |
05:33.12 |
*** join/#brlcad Stattrav_
(~Stattrav@117.192.154.48) |
05:43.41 |
brlcad |
howdy |
05:52.57 |
yukonbob |
hai |
05:53.22 |
yukonbob |
how're things? |
06:47.55 |
*** join/#brlcad Stattrav
(~Stattrav@117.192.128.91) |
06:47.55 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
07:00.39 |
*** join/#brlcad merzo
(~merzo@193.254.217.44) |
07:28.52 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
08:11.31 |
*** join/#brlcad epileg
(~epileg@unaffiliated/epileg) |
10:23.10 |
*** join/#brlcad epileg
(~epileg@unaffiliated/epileg) |
10:51.49 |
*** join/#brlcad Stattrav
(~Stattrav@122.178.195.64) |
10:51.49 |
*** join/#brlcad Stattrav
(~Stattrav@unaffiliated/stattrav) |
12:33.04 |
*** join/#brlcad SCD101
(~sam@109.77.120.154) |
12:33.19 |
SCD101 |
Hey there :) |
12:37.35 |
SCD101 |
Many people enquired about the ESA
SoC? |
12:48.06 |
CIA-62 |
BRL-CAD: 03kunigami * r45551
10/brlcad/trunk/src/liboptical/sh_osl.cpp: moving constant parts
out of the loop |
12:56.40 |
brlcad |
SCD101: I think we're up to approximately
482 |
12:57.06 |
SCD101 |
482 for just your projects? Wow |
12:58.04 |
brlcad |
SCD101: heh, if you believe that, I have a
bridge to sell you |
12:58.36 |
SCD101 |
Well considering there are 20 places in total
over all of the organisations :P |
12:58.47 |
SCD101 |
How many really? :L |
12:59.10 |
SCD101 |
Also, how big is the bridge? |
12:59.15 |
SCD101 |
:P |
12:59.16 |
brlcad |
it's a wonderful bridge, connecting reality
with Mr. Roger's Neighborhood |
12:59.32 |
brlcad |
just a couple |
13:00.24 |
brlcad |
20 orgs, but the program isn't exceptionally
well known, only affects EU students, and is for students with an
interest in a niche domain (space) |
13:00.30 |
SCD101 |
Ah cool. I only know C and am doing GSoC atm.
Would I need experience with BRL-CAD or is it only needed for some
of the projects? |
13:18.02 |
brlcad |
shouldn't matter for most projects, you's
learn what you need as you go |
13:18.50 |
brlcad |
you don't need experience with BRL-CAD, but
you should be able to read and comprehend existing source code
quickly so anything you work on is properly integrated |
13:19.26 |
brlcad |
none of the projects are stand alone,
work-off-in-a-corner tasks |
13:19.54 |
brlcad |
they're all intended to be fully integrated so
that when you're done, you've improved BRL-CAD in some
fashion |
13:33.21 |
SCD101 |
brlcad, I'm currently working on dpkg for
Debian. So I've gotten some good experience with large codebases.
However I do hope our codebase has more comments than dpkg
:P |
13:36.12 |
brlcad |
at more than 1M lines, you'll find some parts
are extensively commented, beautiful lush examples, along with
entire continents of code without comments |
13:36.34 |
brlcad |
so it depends where you're working, but there
are plenty of devs to help you along |
13:36.58 |
SCD101 |
Ok that's good :) |
13:37.21 |
SCD101 |
And all of the projects are open for
submission? I only ask because there can only be one can't there?
:P |
13:38.46 |
brlcad |
not sure what you mean |
13:39.02 |
brlcad |
you propose the project |
13:39.05 |
brlcad |
we just suggest ideas |
13:39.37 |
SCD101 |
Nvm got confused :L |
13:41.04 |
SCD101 |
I'm liking the look of this bending light idea
:P |
13:41.39 |
SCD101 |
AH you use svn |
13:47.51 |
SCD101 |
Ok I really like the code layout. Looks nice
to work with |
15:55.38 |
*** join/#brlcad SCD101
(~sam@109.77.120.154) |
16:04.49 |
brlcad |
if you have any questions, this is usually the
place (or the mailing list) |
17:00.04 |
kunigami_ |
it seems osl shaders have functions named
eval_reflect and eval_transmit which must be fed with the view
direction and the lighting direction and they return the
color |
17:05.50 |
kunigami_ |
hmm so we need to consider the contribution of
each light source and get a color? |
17:07.21 |
kunigami_ |
then, if there's reflection/refraction to be
done, we compute the directions? |
17:45.11 |
*** join/#brlcad Yoshi47
(~jan@64.235.102.210) |
18:15.10 |
*** join/#brlcad merzo
(~merzo@142-55-132-95.pool.ukrtel.net) |
18:30.17 |
CIA-62 |
BRL-CAD: 03bhinesley * r45552
10/brlcad/trunk/src/libged/edit.c: oops; db_free_full_path()
doesn't free bu_malloc'd space for the db_full_path struct itself,
so it must be done manually. |
18:39.26 |
CIA-62 |
BRL-CAD: 03bob1961 * r45553
10/brlcad/trunk/src/tclscripts/mged/openw.tcl: This fixes the
failed browser launch on windows. |
18:56.40 |
CIA-62 |
BRL-CAD: 03brlcad * r45554
10/brlcad/trunk/NEWS: bob fixed a bug in mged where the browser
wasn't getting set properly so the browser wouldn't launch. needed
to set mged_browser var but was only setting
(web_browser) |
19:05.57 |
brlcad |
kunigami_: so my reading through the osl intro
last night, it does change a few notions I had of their
system |
19:06.40 |
brlcad |
they are geared towards solving global
illumination, which doesn't necessarily mean path tracing, but it
does mean that they're not set up for traditional phong-style ray
tracing |
19:07.33 |
kunigami_ |
does global illumination imples multiple
samples? |
19:07.37 |
brlcad |
actually, their docs seemed a little
self-contradicting saying they didn't implement phong-style
semantics for a shader but then continue to list a phong function
as a possible shader evaluation routine |
19:07.37 |
kunigami_ |
implies* |
19:07.51 |
brlcad |
yes and no |
19:08.06 |
brlcad |
osl evaluates closures |
19:08.27 |
brlcad |
so you can think of every pixel as
representing a complex polynomial equation |
19:08.57 |
brlcad |
if solves the equation as far as it can
parametrically, then uses the starting view/ray information to
solve the remainder |
19:09.08 |
brlcad |
so in theory, they precompute a lot more than
you would otherwise |
19:10.28 |
brlcad |
e.g., if you had a lot of reflective shiny
surfaces, bright lights but then had a "black-hole sphere" in that
scene, then the closure for the pixels of the sphere reduce to ..
nothing, black, and there is no need to sample, reshoot,
etc |
19:10.51 |
brlcad |
it's not just "absorbed", it figured out that
the equation reduced |
19:13.16 |
kunigami_ |
I made two renders using their phong function.
one using exponent = 0 and the other exponent = 1. |
19:13.18 |
brlcad |
so not calling -Hbig_number and having any
OSL-samples happen internally was a better direction |
19:15.13 |
kunigami_ |
exp = 0 http://dl.dropbox.com/u/1399996/GSoC/green-phong-e0.png |
19:15.24 |
kunigami_ |
exp = 1 http://dl.dropbox.com/u/1399996/GSoC/green-phong-e1.png |
19:17.27 |
brlcad |
mm, too noisy to tell what is going on
there |
19:20.23 |
*** join/#brlcad kunigami_
(~kunigami@201.53.206.27) |
19:20.30 |
*** part/#brlcad kunigami_
(~kunigami@201.53.206.27) |
19:20.34 |
*** join/#brlcad kunigami_
(~kunigami@201.53.206.27) |
19:26.14 |
brlcad |
kunigami_: did you see a performance
difference between shooting with -H and since you refactored out
the common code from the loop you readded? |
19:27.03 |
kunigami_ |
didn't measured. Let me do some
tests |
19:27.27 |
brlcad |
would have expected it to be
noticeable |
19:32.47 |
kunigami_ |
I was wondering if it's desirable to have
another incremental mode view for such shaders. At each sample the
framebuffer is updated so the image begins noisy and converges to a
noise-free one |
20:20.08 |
CIA-62 |
BRL-CAD: 03erikgreenwald * r45555
10/brlcad/trunk/ (include/bu.h src/libbu/simd.c): add support for
SSE3, SSE4_1 and SSE4_2. Add a bu_simd_supported function. Minor
cleanup and clobberage fixes |
20:25.19 |
CIA-62 |
BRL-CAD: 03r_weiss * r45556
10/brlcad/trunk/src/librt/primitives/nmg/nmg_class.c: (log message
trimmed) |
20:25.19 |
CIA-62 |
BRL-CAD: Updated function nmg_class_pt_s
within file nmg_class.c. This change supports |
20:25.19 |
CIA-62 |
BRL-CAD: the prototype version of the
nmg_triangulate_fu function. Within function |
20:25.19 |
CIA-62 |
BRL-CAD: nmg_class_pt_s it uses the raytracer
to classify if a point is in, out or on a |
20:25.19 |
CIA-62 |
BRL-CAD: shell. During the computations of
determining this, line intersection functions |
20:25.20 |
CIA-62 |
BRL-CAD: are used where some require finite
line segments. To help resolve some of the |
20:25.21 |
CIA-62 |
BRL-CAD: computation problems I added a
magnitude to the ray direction vector instead of |
20:52.34 |
*** join/#brlcad tharis20
(~tharis@bl21-44-216.dsl.telepac.pt) |
21:21.23 |
tharis20 |
hi, I'm Francisco from Portugal and I'm
applying to SOCIS |
21:21.56 |
tharis20 |
I don't know what else I should mention, for
now I'm just reading and following the checklist |
21:23.32 |
kunigami_ |
brlcad: running with -H 100 and 1 sample per
pixel, took 910s. with -H 1 and 100 samples per pixel, took
713s. |
21:29.51 |
CIA-62 |
BRL-CAD: 03Kunigami 07http://brlcad.org * r3020
10/wiki/User:Kunigami/GSoc2011/Reports: /* Reports */ added reports
for week 9 |
21:31.33 |
CIA-62 |
BRL-CAD: 03Kunigami 07http://brlcad.org * r3021
10/wiki/User:Kunigami/GSoc2011/Reports: /* Week 9 (July 18th to
July 25) */ added more info to week 9 |
21:50.20 |
brlcad |
tharis20: welcome and thanks! |
21:50.26 |
brlcad |
kunigami_: iiiinteresting |
21:50.49 |
brlcad |
I would have expected more of an increase
frankly, but maybe osl is just dominating more than I
thought |
21:51.32 |
tharis20 |
brlcad: to run archer do I need to compile
brlcad with opengl? |
21:52.18 |
brlcad |
kunigami_: so now is oslr->QueryColor()
deterministic? does it return the same color every time for a
given info? |
21:52.25 |
brlcad |
tharis20: yep |
21:52.36 |
brlcad |
otherwise, you can use 'mged' |
21:52.54 |
tharis20 |
I know, but I wanted to run archer to see the
differences |
21:53.11 |
kunigami_ |
brlcad: no, I still don't know how to use
eval_reflect / transmit correcly. |
21:53.43 |
tharis20 |
OpenGL is supposed to be shipped with OSX, but
I'm getting an error compiling brlcad with it... I'll see if I can
fix it, otherwise, I'll ask someone for help |
21:54.16 |
brlcad |
tharis20: it is shipped with osx -- how are
you compiling? |
21:54.30 |
brlcad |
tharis20: give the cmake build a try, you'll
need to install cmake |
21:55.19 |
tharis20 |
I have cmake installed, but I was using
autotools |
21:55.27 |
tharis20 |
I'll give it a shot then |
21:56.27 |
brlcad |
otherwise, you can paste an error snippet and
usually someone will respond within a while |
21:56.40 |
tharis20 |
sure ;) thank you |
22:13.26 |
*** join/#brlcad dtidrow_desk
(~dtidrow@c-68-84-167-135.hsd1.mi.comcast.net) |
22:14.06 |
*** join/#brlcad SCD101
(~sam@109.77.120.154) |
22:14.07 |
tharis20 |
... |
22:52.22 |
tharis20 |
woot 37 minutes, 8 seconds |
22:57.59 |
``Erik |
for the compile? single core slower machine?
o.O nfs over 14.4k modem? :D |
22:59.27 |
bhinesley |
waits about that long for a
clean build on a Core 2 6600 @ 2.4Ghz |
23:00.34 |
*** join/#brlcad SCD101
(~sam@109.77.120.154) |
23:13.13 |
*** join/#brlcad abhi2011
(~chatzilla@ip170-79-211-87.adsl2.static.versatel.nl) |
23:13.20 |
abhi2011 |
hi |
23:15.09 |
abhi2011 |
I am trying to write a basic plugin for
BRLCAD |
23:15.30 |
abhi2011 |
Is there any tutorial similar to http://brlcad.org/wiki/Developing_applications
for plugins ? |
23:17.10 |
tharis20 |
``Erik: yes, for the compile |
23:30.08 |
CIA-62 |
BRL-CAD: 03r_weiss * r45557
10/brlcad/trunk/src/librt/primitives/nmg/nmg_rt_isect.c: (log
message trimmed) |
23:30.08 |
CIA-62 |
BRL-CAD: Updated functions
vertex_neighborhood, get_pole_dist_to_face, |
23:30.08 |
CIA-62 |
BRL-CAD: guess_class_from_hitlist_min,
guess_class_from_hitlist_max, |
23:30.08 |
CIA-62 |
BRL-CAD: isect_ray_snurb_face,
record_face_hit, edge_hit_ray_state, ray_hit_vertex, |
23:30.08 |
CIA-62 |
BRL-CAD: nmg_class_ray_vs_shell within file
nmg_rt_isect.c. Many changes are to support |
23:30.09 |
CIA-62 |
BRL-CAD: the prototype version of
nmg_triangulate_fu. The changes associated with this |
23:30.10 |
CIA-62 |
BRL-CAD: prototype are disabled by default.
The prototype related changes create a |
23:37.15 |
kunigami_ |
To evaluate the contribution of light sources,
I'll have to find the light directions for every query point and
also if this light is visible or not. For now, I'll just use
BRL-CAD lights because this information is already
computed |
23:58.28 |
kunigami_ |
Seems there's a bug on sh_toon shader.
Currently it is : cosi = VDOT(swp->sw_hit.hit_normal,
swp->sw_tolight); |
23:58.30 |
CIA-62 |
BRL-CAD: 03r_weiss * r45558
10/brlcad/trunk/src/libbn/plane.c: |
23:58.30 |
CIA-62 |
BRL-CAD: Updated the protoype function
bn_isect_line3_line3_new within file plane.c which |
23:58.30 |
CIA-62 |
BRL-CAD: supports the prototype function
nmg_triangulate_fu. These changed are disabled |
23:58.30 |
CIA-62 |
BRL-CAD: by default. Performed code cleanup
and improved some of the logic. More cleanup |
23:58.30 |
CIA-62 |
BRL-CAD: is needed. This is a work in
progress. |
23:59.41 |
kunigami_ |
but since we're iterating on lights, I think
it should be: cosi = VDOT(swp->sw_hit.hit_normal,
&sh_swp->sw_tolight + 3*i); |