You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(14) |
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(23) |
Feb
(89) |
Mar
(63) |
Apr
(109) |
May
(41) |
Jun
(58) |
Jul
(7) |
Aug
(10) |
Sep
(99) |
Oct
(81) |
Nov
(144) |
Dec
(17) |
2003 |
Jan
(171) |
Feb
(123) |
Mar
(283) |
Apr
(208) |
May
(49) |
Jun
(27) |
Jul
(162) |
Aug
(199) |
Sep
(79) |
Oct
(25) |
Nov
(65) |
Dec
(364) |
2004 |
Jan
(108) |
Feb
(75) |
Mar
(198) |
Apr
(432) |
May
(164) |
Jun
(93) |
Jul
(224) |
Aug
(218) |
Sep
(559) |
Oct
(250) |
Nov
(124) |
Dec
(82) |
2005 |
Jan
(44) |
Feb
(261) |
Mar
(261) |
Apr
(63) |
May
(210) |
Jun
(211) |
Jul
(75) |
Aug
(254) |
Sep
(144) |
Oct
(32) |
Nov
(12) |
Dec
(2) |
2006 |
Jan
(27) |
Feb
(1) |
Mar
(188) |
Apr
(18) |
May
(71) |
Jun
(18) |
Jul
(16) |
Aug
(20) |
Sep
(3) |
Oct
(7) |
Nov
(81) |
Dec
(67) |
2007 |
Jan
(23) |
Feb
(25) |
Mar
(48) |
Apr
(18) |
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(2) |
Oct
(1) |
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
2009 |
Jan
(1) |
Feb
(1) |
Mar
(11) |
Apr
(9) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(2) |
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(4) |
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2014 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
(1) |
Oct
(1) |
Nov
(1) |
Dec
|
2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Cronodeal.ch <ne...@cr...> - 2017-03-30 11:23:54
|
Cronodeal.ch [ Voir la version en ligne ]( http://r.news-cronodeal.ch/9sgkkut7if4prf.html ) [ ]( http://r.news-cronodeal.ch/135uabf8tpaf4prd.html ) Cronodeal.ch : le premier site d'enchères inversées de Suisse ! Des prix qui descendent au lieu de monter, c'est le concept jamais vu de notre Start-up. Avec de nouveaux produits tous les jours, vous trouverez forcément votre bonheur parmi nos offres! [ Visiter notre Site Web ]( http://r.news-cronodeal.ch/135uabf8uhqf4prd.html ) Offre de bienvenue : CHF 5.- de réduction dès CHF 30.- d'achat! Code promo : WELOVESUN Valable jusqu'au 31 mars Les enchères inversées du jour : [ ]( http://r.news-cronodeal.ch/d1y3ft2y1r2f4prd.html ) Extension de mémoire pour Smartphones 64Gb Prix min : CHF 29.90 Prix de départ : CHF 59.95 [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2y2jif4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2y82mf4prd.html ) Écouteurs pour le sport Jabees beatING Prix min : CHF 29.90 Prix de départ: CHF 65.- [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2y8v2f4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2y9nif4prd.html ) Support flexible pour smartphone Phoseat Prix min : CHF 19.90 Prix de départ: CHF 39.90 [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2yafyf4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2yb8ef4prd.html ) Solution naturelle pour s'endormir Dodow Prix min : CHF 39.90 Prix de départ : CHF 69.- [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2yc0uf4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2yctaf4prd.html ) Serre en forme de tunnel Oh My Home Prix min : CHF 24.90 Prix de départ: CHF 59.90 [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2ydlqf4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2yee6f4prd.html ) Balance connectée Withings WS-30 Prix min: CHF 79.90 Prix de départ: CHF 139.95 [ Voir l'enchère ]( http://r.news-cronodeal.ch/d1y3ft2yf6mf4prd.html ) Les meilleures ventes : [ ]( http://r.news-cronodeal.ch/d1y3ft2y3byf4prd.html ) Parapluie ouverture inversée Rechar Prix: 44.90 au lieu de 79.90 [ Voir l'offre ]( http://r.news-cronodeal.ch/d1y3ft2y44ef4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2yhjyf4prd.html ) Canapé Gonflable Prix: 49.90 au lieu de 89.90 [ Voir l'offre ]( http://r.news-cronodeal.ch/d1y3ft2yicef4prd.html ) [ ]( http://r.news-cronodeal.ch/d1y3ft2y4wuf4prd.html ) Carte du monde à gratter Prix: 19.90 au lieu de 34.90 [ Voir l'offre ]( http://r.news-cronodeal.ch/d1y3ft2y5paf4prd.html ) Cet email a été envoyé à neb...@li.... [ Se désinscrire ]( http://r.news-cronodeal.ch/9sgkkut7if4prg.html ) © 2017 Cronodeal.ch |
From: Alanna <Al...@ha...> - 2014-03-12 03:53:58
|
<html> <body> <style> a, img {text-decoration: none !important; border:none;} @media only screen and (max-width: 480px) { } </style> <table border="1" cellpadding="0" cellspacing="0" width="600" bordercolor="#000000"> <tr> <td> <table border="0" cellpadding="0" cellspacing="0" width="100%" height="100%" > <tr> <td > <p align="center"> <a href="http://www.blue-bonus.com/?m=13366&h=dd5bb2cfe3aa1001bf3c7702e26165f7&l=4&p=1&ca=AllCDist_ENGnotUSA_UK_Wbpls_B3_LeVgs_HP_V2_1OT&rbmhurl=/1a8dabdc6b6436344157d4e103/C/uwmh79/qr/no61944.vB/03ab"> <img src="http://www.hammer-gifts.com/1a8d30c234e436344157d46207/V/13366/rpL1/9pyw" width="600" height="89"></a></td> </tr> <tr> <td align="center"> <table border="0" cellpadding="0" cellspacing="0" width="95%"> <tr> <td> <p align="center"><b> <font color="#F76E4C"> <font face="Tahoma" style="font-size: 40pt"> 2OO %</font><font face="Tahoma" style="font-size: 50pt"> </font> </font></b> <p align="center"><b> <font face="Tahoma" style="font-size: 20pt" color="#010000">WelcomeBonus</font></b></td> </tr> <tr> <td><p align="center"> <font face="Tahoma" style="font-size: 16pt" color="#010000"> Great gaming online and amazing mobile casino!</font></td> </tr> <tr> <td><center><a href="http://www.blue-bonus.com/?m=13366&h=dd5bb2cfe3aa1001bf3c7702e26165f7&l=4&p=1&ca=AllCDist_ENGnotUSA_UK_Wbpls_B3_LeVgs_HP_V2_1OT&rbmhurl=/1a8dabdc6b6436344157d4e103/C/wsvmI4/kc/ft13056.l9/58eb" style="text-decoration: none"><p style="max-width:246px; padding:0;color:#E08611;font-size:20px;font-family: Arial, Helvetica, Sans-Serif; text-align:center; -moz-box-shadow:inset 0px 1px 0px 0px #bbdaf7; -webkit-box-shadow:inset 0px 1px 0px 0px #bbdaf7; box-shadow:inset 0px 1px 0px 0px #bbdaf7; background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #FCC396), color-stop(1, #DE6243) ); background:-moz-linear-gradient( center top, #FCC396 5%, #DE6243 100% ); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FCC396', endColorstr='#DE6243'); background-color:#DE6243; -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; border:1px solid #525252; color:#fff; font-family:arial; font-size:1.8em; font-weight:bold; padding:1px 12px; text-decoration:none; width:70%; margin:auto; ">JOlN N0W</p></a> </center></td> </tr> <tr> <td> <div class="row-fluid"> <div class="span8"> <div class="news-body"> <h3> <font face="Tahoma" size="2">The world’s leading mobile casino gets even better<br> <span style="font-weight: 400">The new site loads faster. The games load faster. Withdrawals and deposits are faster. <br> Also, the latest games will now show up even faster at LeoVegas - always first with the latest.<strong> </strong></span></font></h3> <font face="Tahoma" size="2"><strong>The world’s fastest mobile casino is here!<br> </strong>LeoVegas launches a new, faster gaming site built on cutting edge technology and design. <br> Europe’s leading mobile casino gets faster in every aspect. More gaming, less waiting!</font><div> <ul> <li><font face="Tahoma" size="2"> <strong>Faster payments</strong></font></li> <li><font face="Tahoma" size="2"> <strong>Games loading faster</strong></font></li> <li><font face="Tahoma" size="2"> <strong>Site loading faster</strong></font></li> </ul> </div> <p><font face="Tahoma" size="2">Leo-Vegas is now definitely the world’s fastest and smoothest MobileCasino. <br> Try out the new Leo Vegas now! Why wait?</font></div> </div> </div> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> <table border="0" cellpadding="0" cellspacing="0" width="600" bordercolor="#000000"> <tr><td> <p align="center"><a href="http://www.blue-bonus.com/?m=13366&h=dd5bb2cfe3aa1001bf3c7702e26165f7&l=4&p=1&ca=AllCDist__UK_Wbpls_B3_LeVgs_HP_V2_1OT&rbmhurl=/1a859373e6a436344157d4c802/C/hegaY2/it/kj24393.q3/63ay">Don't like this offer? Can we interest you in something else? - Click Here</a></td></tr></table> <font style="font-size: 7pt">Keluno, Unit4872 POBox6945 LondonW1A6US</font><span style="font-size: 7pt"><br> </span></font> <font color="#0000FF"><span style="font-size: 7pt"><u> <a href="http://www.blue-bonus.com/?m=13366&h=dd5bb2cfe3aa1001bf3c7702e26165f7&l=4&p=1&ca=UK_Wbpls_B3_LeVgs_HP_V2_1OT&rbmhurl=/15815876024436344157d/U/"> Unsubscribe</a></u></span></font> <br><img border="0" src="http://www.blue-bonus.com/?m=13366&h=dd5bb2cfe3aa1001bf3c7702e26165f7&l=11&p=1&ca=UK_Wbpls_B3_LeVgs_HP_V2_1OT&rbmhurl=/1a87d28d74b436344157d4b402/V/13366/hl8N/3tpu"> </body> </html> |
From: Mahmood F. <mah...@e-...> - 2013-02-21 17:48:13
|
Dear Beloved one, I will like you to read this mail showing some sign of concern to it and also bearing in mind that What we do for ourselves dies with us but what we do for others and the world remains and is immortal. My name is puan.Mahmood Barakat Falisha a business merchant in Malaysia. As a result of my present medical condition now, my personal doctor confided in me few days ago that I have only but few more weeks to live and I see it as life been unfair to me. All my life i always pray for more opportunity of helping and contributing on humanitarian assistance because i believe that the highest use of capital is not to make more money but to make money do more for the betterment of life and I would rather have it said, She lived usefully, than, She died rich'. In view of this setback, i want to donate my estate for humanitarian assistance, since this has always been the plan of my late husband and besides i have no child. I once asked members of my family to close one of my accounts and distribute the money which I have there to charity Organization in Haiti and Uganda to help their poor children; they refused and kept the money to themselves. Hence, I do not trust them anymore, as they seem not to be contended with what I have left for them. In an effort to compliment the wish of my late Husband and good work of God almighty who said through his prophet that, A mans true wealth is the good he does in this world I donate the sum of £6,200,000.00 (Six Million Two Hundred Thousand Great Britain Pounds) to you. On your acknowledgement of this mail and informing me of your nationality and current place of resident, my lawyer will facilitate due processes for transfer of this legacy to you. May God bless you as you use this money judiciously for the work of charity. My dear remember whatever a man has in superabundance is owed, of natural right, to the poor for their sustenance. and The bread which you withhold belongs to the hungry: the clothing you shut away, to the naked: and the money you bury in the earth is the redemption and freedom of the penniless. Sincere regards, puan.Mahmood B Falisha |
From: KimHyoun W. <ki...@ho...> - 2012-09-23 00:30:34
|
http://www.aranzacje.mojwroclaw.eu/wp-content/plugins/akismet/google.html?aoj=zb.gio&anf=yug.ytf&mhh=trws |
From: <ki...@us...> - 2009-04-24 06:10:51
|
Revision: 3307 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3307&view=rev Author: kimsama Date: 2009-04-24 06:10:50 +0000 (Fri, 24 Apr 2009) Log Message: ----------- Changed its version number to 0.9b, Change list can be found on the following link: http://kimsama.blogspot.com/2009/04/nebula2-3ds-max-toolkit-update.html Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms Modified: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms =================================================================== --- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms 2009-04-24 06:06:40 UTC (rev 3306) +++ trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms 2009-04-24 06:10:50 UTC (rev 3307) @@ -11,7 +11,7 @@ ( GroupBox grp1 "" pos:[4,7] width:316 height:124 label lblDesc "nMaxToolBox for Nebula2 3DS Max Toolkit." pos:[90,26] width:217 height:20 - label lblVersion "Release Version 0.9" pos:[90,49] width:210 height:20 + label lblVersion "Release Version 0.9a" pos:[90,49] width:210 height:20 label lblCopyWrite "Copyright (c) 2004 Kim, Hyoun Woo." pos:[89,102] width:210 height:20 label lblLicense "This product is licensed under the terms of the Nebula License." pos:[89,70] width:221 height:31 bitmap bmpN2Logo pos:[15,26] width:64 height:64 fileName:"nebula2/n2logo256.bmp" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-24 06:06:47
|
Revision: 3306 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3306&view=rev Author: kimsama Date: 2009-04-24 06:06:40 +0000 (Fri, 24 Apr 2009) Log Message: ----------- Updated doc (on character's howto) Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/characters.dox Modified: trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/characters.dox =================================================================== --- trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/characters.dox 2009-04-22 04:59:29 UTC (rev 3305) +++ trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/characters.dox 2009-04-24 06:06:40 UTC (rev 3306) @@ -83,8 +83,8 @@ <tt>Dope sheet Track View</tt>. Select <i>'Graph Editors > Track View - Dope Sheet...'</i> - The Nebula2 animation state dialog creates note track on the root biped object. - Select the root biped object and collapse to see its note track. + The Nebula2 animation state dialog creates note track on the <b>root</b> biped object. + Select the <b>root</b> biped object and collapse to see its note track. @image html dopetrackview01.png @@ -101,15 +101,22 @@ -- create a new notetrack which has "AnimStateNotetrack" for its name newNoteTrack = notetrack "AnimStateNotetrack" - -- add created notetrack to the max node + -- add created notetrack to the max node. + -- '$root' is root biped object's name. addNoteTrack $root newNoteTrack - -- create notetrack's key + -- create notetrack's key. ntKey = newNoteTrack.keys -- add key to the specified location. addedKey = addNewNoteKey ntKey 12 + @image html dopetrackview01.png + + @note + Remark the note should be assigned on the root the biped object otherwise the plugin + does not retrieve clips. Also it only possible with biped object not bone object. + -- The animation state which has "Kick" for its name and repeat for its type is created. -- Also the animation state has 20 and 0.0 for its duration and fade-in-time value. addedKey.value = "Kick : repeat \r\nduration : 20 \r\nfadeintime : 0.0" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-22 04:59:32
|
Revision: 3305 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3305&view=rev Author: kimsama Date: 2009-04-22 04:59:29 +0000 (Wed, 22 Apr 2009) Log Message: ----------- Changed to add "default" clip name if it does not have any. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc 2009-04-21 07:05:48 UTC (rev 3304) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc 2009-04-22 04:59:29 UTC (rev 3305) @@ -135,15 +135,31 @@ //----------------------------------------------------------------------------- /** Build animation clips. + + - 22-Apr-09 kims Changed to add "default" clip name if it does not have any. */ void nMaxSkinAnimator::BuildAnimClips(nSkinAnimator* animator, nMaxNoteTrack& noteTrack) { int numClips = noteTrack.GetNumStates(); animator->BeginClips(numClips); + nString clipName; + for (int i=0; i<numClips; i++) { const nMaxAnimState& clip = noteTrack.GetState(i); + + // force to get clip name if it does not have any. + if(clip.name.IsEmpty()) + { + clipName = "default"; + clipName.AppendInt(i); + } + else + { + clipName = clip.name; + } + animator->SetClip(i, i, clip.name); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-21 07:06:00
|
Revision: 3304 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3304&view=rev Author: kimsama Date: 2009-04-21 07:05:48 +0000 (Tue, 21 Apr 2009) Log Message: ----------- Added new line character('\n') at the end of n_listener message. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptionscriptext.cc trunk/nebula2/code/contrib/nmax/src/expose/nmaxexposecmds.cc trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_builder.cc trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_objattr.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -928,7 +928,7 @@ // Load the shaders.xml file if (!xmlDoc.LoadFile(filterXmlFilePath.Get())) { - n_listener("Filed to load %s.", filterXmlFilePath.Get()); + n_listener("Filed to load %s.\n", filterXmlFilePath.Get()); return false; } @@ -992,7 +992,7 @@ // Load the shaders.xml file if (!xmlDoc.LoadFile(shdXmlFilePath.Get())) { - n_listener("Filed to load %s.", shdXmlFilePath.Get()); + n_listener("Filed to load %s.\n", shdXmlFilePath.Get()); return false; } @@ -1341,7 +1341,7 @@ // Load the shaders.xml file if (!xmlDoc.LoadFile(shdXmlFilePath.Get())) { - n_listener("Filed to load %s.", shdXmlFilePath.Get()); + n_listener("Filed to load %s.\n", shdXmlFilePath.Get()); return false; } Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -95,7 +95,7 @@ if (!fileServer->FileExists(iniFilename)) { // .ini file does not exist in '/plugcfg' directory. - n_listener("%s file does not exist in '$3dsmax/plugcfg' directory.", N_MAXEXPORT_INIFILE); + n_listener("%s file does not exist in '$3dsmax/plugcfg' directory.\n", N_MAXEXPORT_INIFILE); return 0; } } @@ -234,7 +234,7 @@ if (!fileServer->DirectoryExists(this->homeDir.Get())) { - n_listener("Home path '%s' does not exist.", this->homeDir.Get()); + n_listener("Home path '%s' does not exist.\n", this->homeDir.Get()); return false; } else @@ -368,7 +368,7 @@ { nString alerts("ALERT: assignment of paths are wrong:"); alerts += tmp; - n_listener("%s", alerts.Get()); + n_listener("%s\n", alerts.Get()); return false; } } Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptionscriptext.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptionscriptext.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptionscriptext.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -19,7 +19,7 @@ nMaxOptions* options = nMaxOptions::Instance(); if (!options->Initialize()) { - n_listener("Failed to read '%s' file from 'plugcfg' directory.", N_MAXEXPORT_INIFILE); + n_listener("Failed to read '%s' file from 'plugcfg' directory.\n", N_MAXEXPORT_INIFILE); return NULL; } Modified: trunk/nebula2/code/contrib/nmax/src/expose/nmaxexposecmds.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/expose/nmaxexposecmds.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/expose/nmaxexposecmds.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -325,7 +325,7 @@ char* text = _T(msg); n_printf ("%s", text); - n_listener("%s", text); + n_listener("%s\n", text); } //----------------------------------------------------------------------------- Modified: trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_builder.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_builder.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_builder.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -158,7 +158,7 @@ if (!objAttr.Open()) { - n_listener("nMaxScriptBuilder: %s.xml file does not exist", clazz->GetName()); + n_listener("nMaxScriptBuilder: %s.xml file does not exist.\n", clazz->GetName()); } // get cmds list of the object @@ -299,7 +299,7 @@ AddVariousParam(ncmd, cmd, param, rollout, setupbody); break; default: - n_listener("Unknown type in %s.xml file: %s command.", + n_listener("Unknown type in %s.xml file: %s command.\n", objAttr.GetName().Get(), commandName.Get()); break; } Modified: trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_objattr.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_objattr.cc 2009-04-14 08:31:47 UTC (rev 3303) +++ trunk/nebula2/code/contrib/nmax/src/expose/nmaxscript_objattr.cc 2009-04-21 07:05:48 UTC (rev 3304) @@ -209,10 +209,10 @@ if (0 == strcmp("various", str)) this->type = Various; else - n_listener("Invalid type of string: %s", str); + n_listener("Invalid type of string: %s\n", str); } else { - n_listener("Type for command %s does not exist.", this->GetName()); + n_listener("Type for command %s does not exist.\n", this->GetName()); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-14 08:31:57
|
Revision: 3303 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3303&view=rev Author: kimsama Date: 2009-04-14 08:31:47 +0000 (Tue, 14 Apr 2009) Log Message: ----------- - Changed the plugin which is enable to export only animation data. - Changed to export skin animator first before we export any other nodes such as ntransformnode or nskinshapenode when we export skinned mesh model. (Nebula3 assumes nskinanimator is located first in a .n2 legacy file.) - Added supporting nCharacter3SkinAnimator exporting. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/inc/export2/nmaxoptions.h trunk/nebula2/code/contrib/nmax/inc/export2/nmaxscene.h trunk/nebula2/code/contrib/nmax/inc/pluginlibs/nmaxoptionparammapdlg.h trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.h trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.rc trunk/nebula2/code/contrib/nmax/src/export2/nmaxexport2_main.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxscene.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxoptionparammapdlg.cc trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc Modified: trunk/nebula2/code/contrib/nmax/inc/export2/nmaxoptions.h =================================================================== --- trunk/nebula2/code/contrib/nmax/inc/export2/nmaxoptions.h 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/inc/export2/nmaxoptions.h 2009-04-14 08:31:47 UTC (rev 3303) @@ -21,6 +21,16 @@ class nMaxOptions { public: + enum ExportMode + { + Preview = 0, + Normal, + AnimOnly, + + NumMode, + }; + +public: /// the destructor. virtual ~nMaxOptions(); @@ -85,6 +95,9 @@ void SetAnimFileType(const char* type); const nString& GetAnimFileType() const; + void SetUseCharacter3SkinAnimator(bool b); + bool GetUseCharacter3SkinAnimator() const; + void SetExportHiddenNodes(bool status); bool ExportHiddenNodes(); @@ -108,8 +121,10 @@ bool OverwriteExistTexture() const; - void SetPreviewMode(bool on); - bool UsePreviewMode() const; + //void SetPreviewMode(bool on); + //bool UsePreviewMode() const; + void SetExportMode(ExportMode m); + ExportMode GetExportMode() const; bool UseDefaultViewer() const; void SetUseDefaultViewer(bool use); @@ -125,6 +140,10 @@ nString GetParticle2MeshSuffix() const; /// @} + /// @name Pack Vertex Component + /// @{ + bool PackVertexComponents() const; + /// @} protected: /// bool LoadDirSettings(); @@ -161,6 +180,8 @@ nString sceneFilename; + bool useCharacter3SkinAnimator; + /// animation sample rate. int sampleRate; /// maximum number of joint palette. @@ -203,7 +224,8 @@ /// launch specified viewer. bool runViewer; /// preview mode. It ueses ram file to view exported model. - bool previewMode; + //bool previewMode; + ExportMode exportMode; /// default viewer. bool useDefaultViewer; /// verbose level of log message. 0: errors only, 1:warning, 2:low, 3:midium, 4:high @@ -384,6 +406,18 @@ } //----------------------------------------------------------------------------- inline +void nMaxOptions::SetUseCharacter3SkinAnimator(bool b) +{ + this->useCharacter3SkinAnimator = b; +} +//----------------------------------------------------------------------------- +inline +bool nMaxOptions::GetUseCharacter3SkinAnimator() const +{ + return this->useCharacter3SkinAnimator; +} +//----------------------------------------------------------------------------- +inline void nMaxOptions::SetMaxJointPaletteSize(int size) { this->maxJointPaletteSize = size; @@ -420,15 +454,16 @@ } //----------------------------------------------------------------------------- inline -void nMaxOptions::SetPreviewMode(bool on) +void nMaxOptions::SetExportMode(ExportMode m) { - this->previewMode = on; + this->exportMode = m; } //----------------------------------------------------------------------------- inline -bool nMaxOptions::UsePreviewMode() const +nMaxOptions::ExportMode +nMaxOptions::GetExportMode() const { - return this->previewMode; + return this->exportMode; } //----------------------------------------------------------------------------- inline Modified: trunk/nebula2/code/contrib/nmax/inc/export2/nmaxscene.h =================================================================== --- trunk/nebula2/code/contrib/nmax/inc/export2/nmaxscene.h 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/inc/export2/nmaxscene.h 2009-04-14 08:31:47 UTC (rev 3303) @@ -74,6 +74,8 @@ // @{ /// bool ExportNodes(INode* inode); + /// + bool ExportSkinAnimator(bool animOnly = false); /// virtual nSceneNode* ExportGeomObject(INode* inode, Object* obj); /// Modified: trunk/nebula2/code/contrib/nmax/inc/pluginlibs/nmaxoptionparammapdlg.h =================================================================== --- trunk/nebula2/code/contrib/nmax/inc/pluginlibs/nmaxoptionparammapdlg.h 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/inc/pluginlibs/nmaxoptionparammapdlg.h 2009-04-14 08:31:47 UTC (rev 3303) @@ -50,6 +50,8 @@ void OnMeshFileType(HWND hwnd); void OnAnimFileType(HWND hwnd); + void OnUseCharacter3SkinAnimator(HWND hwnd); + void OnHiddenObject(HWND hwnd); /// @name script server combobox Modified: trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.h =================================================================== --- trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.h 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.h 2009-04-14 08:31:47 UTC (rev 3303) @@ -54,6 +54,8 @@ #define IDC_EDIT_GEOM_SCALE 1047 #define IDC_EDIT_GEOMSCALE 1047 #define IDC_SPIN_GEOMSCALE 1048 +#define IDC_CHECK2 1049 +#define IDC_USE_CHARACTER3SKINANIMATOR 1049 // Next default values for new objects // @@ -61,7 +63,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 109 #define _APS_NEXT_COMMAND_VALUE 40001 -#define _APS_NEXT_CONTROL_VALUE 1047 +#define _APS_NEXT_CONTROL_VALUE 1050 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif Modified: trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.rc =================================================================== --- trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.rc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/res/nmaxtoolbox.rc 2009-04-14 08:31:47 UTC (rev 3303) @@ -13,7 +13,7 @@ #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// -// \xC7ѱ\xB9\xBE\xEE resources +// Korean resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_KOR) #ifdef _WIN32 @@ -26,55 +26,44 @@ // Dialog // -IDD_UTILITY_OPTION DIALOGEX 0, 0, 108, 388 +IDD_UTILITY_OPTION DIALOGEX 0, 0, 108, 407 STYLE DS_SETFONT | WS_CHILD | WS_SYSMENU FONT 8, "MS Sans Serif", 400, 0, 0x0 BEGIN GROUPBOX "Mesh",IDC_STATIC,3,1,102,213 - GROUPBOX "Animation",IDC_STATIC,3,218,102,69 - CONTROL "Normal",IDC_VERTEX_NORMAL,"Button",BS_AUTOCHECKBOX | - WS_TABSTOP,11,25,78,8 - CONTROL "Color",IDC_VERTEX_COLOR,"Button",BS_AUTOCHECKBOX | - WS_TABSTOP,11,36,76,8 - CONTROL "Uv",IDC_VERTEX_UV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP, - 11,47,80,8 - CONTROL "n3d2",IDC_N3D2,"Button",BS_AUTORADIOBUTTON | WS_GROUP,9, - 193,37,11 + GROUPBOX "Animation",IDC_STATIC,3,218,102,85 + CONTROL "Normal",IDC_VERTEX_NORMAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,25,78,8 + CONTROL "Color",IDC_VERTEX_COLOR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,36,76,8 + CONTROL "Uv",IDC_VERTEX_UV,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,47,80,8 + CONTROL "n3d2",IDC_N3D2,"Button",BS_AUTORADIOBUTTON | WS_GROUP,9,193,37,11 CONTROL "nvx2",IDC_NVX2,"Button",BS_AUTORADIOBUTTON,54,193,37,11 - CONTROL "nanim2",IDC_NANIM2,"Button",BS_AUTORADIOBUTTON | - WS_GROUP,11,240,45,11 + CONTROL "nanim2",IDC_NANIM2,"Button",BS_AUTORADIOBUTTON | WS_GROUP,11,240,45,11 CONTROL "nax2",IDC_NAX2,"Button",BS_AUTORADIOBUTTON,60,240,35,11 - COMBOBOX IDC_SELECT_SCRIPT_SERVER,9,328,88,82,CBS_DROPDOWN | - WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_SELECT_SCRIPT_SERVER,9,346,88,82,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP GROUPBOX "Save As",IDC_STATIC,7,184,95,25 GROUPBOX "Save As",IDC_STATIC,7,230,95,26 GROUPBOX "Vertex ",IDC_STATIC,7,12,94,60 GROUPBOX "Skin",IDC_STATIC,7,109,94,71 LTEXT "Max Joint Palette:",IDC_STATIC,12,121,82,11 LTEXT "Weight Threshold:",IDC_STATIC,12,149,82,11 - CONTROL "Tangent",IDC_VERTEX_TANGENT,"Button",BS_AUTOCHECKBOX | - WS_TABSTOP,11,58,80,8 - GROUPBOX "Misc",IDC_STATIC,3,290,102,91 - CONTROL "Export Hidden Nodes",IDC_HIDDEN_OBJ,"Button", - BS_AUTOCHECKBOX | WS_TABSTOP,6,300,80,9 - LTEXT "Select Script Server:",IDC_STATIC,8,317,91,8 - CONTROL "",IDC_EDIT_MAXJOINTPALETTE,"CustEdit",WS_TABSTOP,12,133, - 69,10 - CONTROL "",IDC_SPIN_MAXJOINTPALETTE,"SpinnerControl",0x0,84,133, - 7,10 - CONTROL "",IDC_EDIT_WEIGHTHRESHOLD,"CustEdit",WS_TABSTOP,12,160, - 69,10 - CONTROL "",IDC_SPIN_WEIGHTHRESHOLD,"SpinnerControl",0x0,84,160,7, - 10 + CONTROL "Tangent",IDC_VERTEX_TANGENT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,58,80,8 + GROUPBOX "Misc",IDC_STATIC,3,308,102,91 + CONTROL "Export Hidden Nodes",IDC_HIDDEN_OBJ,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,6,318,80,9 + LTEXT "Select Script Server:",IDC_STATIC,8,335,91,8 + CONTROL "",IDC_EDIT_MAXJOINTPALETTE,"CustEdit",WS_TABSTOP,12,133,69,10 + CONTROL "",IDC_SPIN_MAXJOINTPALETTE,"SpinnerControl",0x0,84,133,7,10 + CONTROL "",IDC_EDIT_WEIGHTHRESHOLD,"CustEdit",WS_TABSTOP,12,160,69,10 + CONTROL "",IDC_SPIN_WEIGHTHRESHOLD,"SpinnerControl",0x0,84,160,7,10 LTEXT "Sample Rate:",IDC_STATIC,8,258,82,11 CONTROL "",IDC_EDIT_SAMPLERATE,"CustEdit",WS_TABSTOP,8,269,69,10 CONTROL "",IDC_SPIN_SAMPLERATE,"SpinnerControl",0x0,80,269,7,10 GROUPBOX "Scale Geometry By",IDC_STATIC,7,76,94,30 CONTROL "",IDC_EDIT_GEOMSCALE,"CustEdit",WS_TABSTOP,13,89,69,10 CONTROL "",IDC_SPIN_GEOMSCALE,"SpinnerControl",0x0,85,89,7,10 - COMBOBOX IDC_SELECT_VERBOSE_LEVEL,8,360,89,82,CBS_DROPDOWN | - WS_VSCROLL | WS_TABSTOP - LTEXT "Verbose Level:",IDC_STATIC,7,349,91,8 + COMBOBOX IDC_SELECT_VERBOSE_LEVEL,8,378,89,82,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP + LTEXT "Verbose Level:",IDC_STATIC,7,367,91,8 + CONTROL "Use Character3 Animator",IDC_USE_CHARACTER3SKINANIMATOR, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,286,93,12 END @@ -88,17 +77,17 @@ BEGIN IDD_UTILITY_OPTION, DIALOG BEGIN - BOTTOMMARGIN, 387 + BOTTOMMARGIN, 406 END END #endif // APSTUDIO_INVOKED -#endif // \xC7ѱ\xB9\xBE\xEE resources +#endif // Korean resources ///////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////// -// \xBF\xB5\xBE\xEE(\xB9̱\xB9) resources +// English (U.S.) resources #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) #ifdef _WIN32 @@ -112,15 +101,13 @@ // IDD_DIR_SETTING DIALOGEX 0, 0, 406, 202 -STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | - WS_SYSMENU +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Nebula Directory Setting Dialog" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "OK",IDOK,349,7,50,14 PUSHBUTTON "Cancel",IDCANCEL,349,24,50,14 - LTEXT "'home' assign (e.g. 'D:\\Projects\\nebula2\\')", - IDC_STATIC,15,10,148,9 + LTEXT "'home' assign (e.g. 'D:\\Projects\\nebula2\\')",IDC_STATIC,15,10,148,9 EDITTEXT IDC_EXT_DIRNAME,14,21,132,12,ES_AUTOHSCROLL PUSHBUTTON "...",IDC_EXP_FILESEL,150,21,14,12 GROUPBOX "Assigns",IDC_STATIC,7,44,192,149 @@ -155,22 +142,18 @@ EDITTEXT IDC_EXT_PATH_TEXTURES,259,152,132,12,ES_AUTOHSCROLL RTEXT "Textures:",IDC_STATIC,217,154,38,8 PUSHBUTTON "Set default",IDC_SET_DEFAULT_PATHS,309,171,82,15 - LTEXT "Binary path (e.g. 'home:bin/win32d/')",IDC_STATIC,185, - 10,120,9 + LTEXT "Binary path (e.g. 'home:bin/win32d/')",IDC_STATIC,185,10,120,9 EDITTEXT IDC_EXT_BINARY_PATH,185,21,132,12,ES_AUTOHSCROLL GROUPBOX "",IDC_STATIC,7,3,324,36 END IDD_LOG_DLG DIALOGEX 0, 0, 322, 228 -STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | - WS_SYSMENU +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Nebula2 Exporter Log" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Ok",IDOK,265,207,50,14 - CONTROL "",IDC_LOG_EDIT,"RichEdit20A",ES_MULTILINE | - ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | - WS_VSCROLL | WS_HSCROLL,7,7,308,194 + CONTROL "",IDC_LOG_EDIT,"RichEdit20A",ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | WS_VSCROLL | WS_HSCROLL,7,7,308,194 END @@ -226,7 +209,7 @@ #endif // APSTUDIO_INVOKED -#endif // \xBF\xB5\xBE\xEE(\xB9̱\xB9) resources +#endif // English (U.S.) resources ///////////////////////////////////////////////////////////////////////////// @@ -241,4 +224,3 @@ ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED - Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxexport2_main.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxexport2_main.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxexport2_main.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -167,7 +167,7 @@ @return Return 0, if it failed to export. */ -int ExportScene(const TCHAR* name, Interface* inf, INode* inode, int previewMode) +int ExportScene(const TCHAR* name, Interface* inf, INode* inode, int mode) { n_assert(inf); @@ -216,24 +216,72 @@ expOptions->SetSaveFileName(nString(name)); // specifies preview mode. - if (-1 == previewMode ) - expOptions->SetPreviewMode(true); - else - expOptions->SetPreviewMode(false); + //if (-1 == previewMode ) + // expOptions->SetPreviewMode(true); + //else + // expOptions->SetPreviewMode(false); + //FIXME: ugly export mode specification. + nMaxOptions::ExportMode exportMode; + + if (-1 == mode) + { + exportMode = nMaxOptions::Preview; + } + else + { + if (0 == mode) + { + exportMode = nMaxOptions::Normal; + } + else + if (1 == mode) + { + exportMode = nMaxOptions::AnimOnly; + } + else + { + n_maxlog(Error, "Unknown Export Mode: Failed to export scene."); + + ReleaseSingletons(); + return 0; + } + + //nString exportedFileName (name); + //if (exportedFileName.CheckExtension("n2")) + //{ + // exportMode = nMaxOptions::Normal; + //} + //else + //if (exportedFileName.CheckExtension("nax2") || + // exportedFileName.CheckExtension("nanim2")) + //{ + // exportMode = nMaxOptions::AnimOnly; + //} + //else + //{ + // n_maxlog(Error, "Unknown Export Mode: Failed to export scene."); + + // ReleaseSingletons(); + // return 0; + //} + } + + expOptions->SetExportMode(exportMode); + // export scene. nMaxScene scene; if (!scene.Export(inode)) { - n_maxlog(Error, "Failed to export scene."); + n_maxlog(Error, "Failed to export Nodes: Failed to export scene."); ReleaseSingletons(); return 0; } - // run viewer app. - if (expOptions->RunViewer()) + // run viewer app. - It only works on normal exporting mode! + if (expOptions->RunViewer() && (expOptions->GetExportMode() == nMaxOptions::Normal)) { nString saveFile = name; nString sceneFile = saveFile.ExtractFileName(); Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -36,6 +36,7 @@ groupMeshes(true), meshFileExtension(".n3d2"), animFileExtension(".nanim2"), + useCharacter3SkinAnimator(false), geomScale(0.01f), maxJointPaletteSize(24), weightThreshold(0.0001f), @@ -46,7 +47,8 @@ useIndivisualMesh(false), verboseLevel(2/*Low*/), overwriteExistTexture(true), - previewMode(false), + //previewMode(false), + exportMode(Normal), useDefaultViewer(true), meshSuffixStatic(""), meshSuffixSkinned("_skinned"), @@ -516,6 +518,12 @@ iniFile->SetDefault("2"); this->sampleRate = iniFile->ReadInt ("SampleRate"); + iniFile->SetDefault("false"); + this->useCharacter3SkinAnimator = iniFile->ReadBool("UseCharacter3SkinAnimator"); + + //FIXME: change it to use ReadBool() + //int tmpExportHiddenNode; + iniFile->SetDefault("false"); this->exportHiddenNodes = iniFile->ReadBool("ExportHiddenNode"); @@ -561,6 +569,7 @@ iniFile->WriteFloat ("WeightThreshold", this->weightThreshold); iniFile->WriteString("SaveMeshAs", this->meshFileExtension); iniFile->WriteString("SaveAnimAs", this->animFileExtension); + iniFile->WriteBool ("UseCharacter3SkinAnimator", this->useCharacter3SkinAnimator); iniFile->WriteInt ("SampleRate", this->sampleRate); iniFile->WriteBool ("ExportHiddenNode",this->exportHiddenNodes); iniFile->WriteString("ScriptServer", this->saveScriptServer); Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxscene.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxscene.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxscene.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -90,6 +90,15 @@ return false; } + // if the given secene has any number of bones, + // we first export its animation with skinanimator. + if(!this->ExportSkinAnimator()) + return false; + + // if we only export animation data(.nax2 or .nanim2), we've done all necessary. + if (nMaxOptions::Instance()->GetExportMode() == nMaxOptions::AnimOnly) + return true; + // if the given node is NULL, it passes scene root node. INode* node = (inode ? inode : rootNode); @@ -284,7 +293,7 @@ } // if preview mode was set, switch to ram file server. - if (nMaxOptions::Instance()->UsePreviewMode()) + if (nMaxOptions::Instance()->GetExportMode() == nMaxOptions::Preview ) ks->ReplaceFileServer("nramfileserver"); else ks->ReplaceFileServer("nfileserver2"); @@ -666,34 +675,6 @@ this->globalParticle2MeshBuilder.Save(fileServer, meshFileName.Get()); } - // create skin animators - nMaxBoneManager *bm = nMaxBoneManager::Instance(); - if (bm->GetNumBones() > 0) - { - for (int skelIndex = 0; skelIndex < bm->GetNumSkeletons(); skelIndex++) - { - // export .anim2 and skin animator, if the exported scene has skinned mesh. - nString animFilename = this->GetAnimFileNameToSave(skelIndex); - - if (!nMaxBoneManager::Instance()->Export(skelIndex, animFilename.Get())) - { - n_maxlog(Error, "Failed to export animation %s", animFilename.Get()); - return false; - } - - nSkinAnimator* createdAnimator = NULL; - - nMaxSkinAnimator skinAnimator; - nString animatorName("skinanimator"); - animatorName.AppendInt(skelIndex); - createdAnimator = (nSkinAnimator*)skinAnimator.Export(skelIndex, animatorName.Get(), animFilename.Get()); - if (createdAnimator) - { - nKernelServer::Instance()->PopCwd(); - } - } - } - // // save node to export.(save .n2 file on disk) // @@ -966,6 +947,58 @@ //----------------------------------------------------------------------------- /** + Export skin animator. + + This member function is called before calling ExportNodes which exports all + 3dsmax nodes of the given scene. + + Nebula3 assumes any skinanimator places fisrt at its scene hierarchy when it + loads and parses .n2 legacy file. So we also need to change skinanimators location. + + @note + It should be called after nMaxScene::OpenNebula() member function otherwise + it will be failed. + + @param animOnly used for exporting only animation file. +*/ +bool nMaxScene::ExportSkinAnimator(bool animOnly) +{ + nMaxBoneManager *bm = nMaxBoneManager::Instance(); + if (bm->GetNumBones() > 0) + { + // create skin animators + for (int skelIndex = 0; skelIndex < bm->GetNumSkeletons(); skelIndex++) + { + // export .anim2 and skin animator, if the exported scene has skinned mesh. + nString animFilename = this->GetAnimFileNameToSave(skelIndex); + + if (!nMaxBoneManager::Instance()->Export(skelIndex, animFilename.Get())) + { + n_maxlog(Error, "Failed to export animation %s", animFilename.Get()); + return false; + } + + if(animOnly) + continue; + + nSkinAnimator* createdAnimator = NULL; + + nMaxSkinAnimator skinAnimator; + nString animatorName("skinanimator"); + animatorName.AppendInt(skelIndex); + createdAnimator = (nSkinAnimator*)skinAnimator.Export(skelIndex, animatorName.Get(), animFilename.Get()); + if (createdAnimator) + { + nKernelServer::Instance()->PopCwd(); + } + } + } + + return true; +} + +//----------------------------------------------------------------------------- +/** Export anything else. @note Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxskinanimator.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -11,7 +11,7 @@ #include "pluginlibs/nmaxdlg.h" #include "pluginlibs/nmaxlogdlg.h" -#include "scene/nskinanimator.h" +#include "scene/ncharacter3skinanimator.h" //----------------------------------------------------------------------------- /** @@ -36,8 +36,22 @@ n_assert(animatorName); n_assert(animFilename); - nSkinAnimator* animator = (nSkinAnimator*)this->CreateNebulaObject("nskinanimator", animatorName); + nString skinAnimatorName; + nSkinAnimator* animator; + if (nMaxOptions::Instance()->GetUseCharacter3SkinAnimator()) + { + skinAnimatorName = "ncharacter3skinanimator"; + //FIXME: ugly casting! + animator = (nCharacter3SkinAnimator*)this->CreateNebulaObject(skinAnimatorName.Get(), animatorName); + } + else + { + skinAnimatorName = "nskinanimator"; + //FIXME: ugly casting! + animator = (nSkinAnimator*)this->CreateNebulaObject(skinAnimatorName.Get(), animatorName); + } + if (animator) { // build joints from bone array of the scene. Modified: trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxoptionparammapdlg.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxoptionparammapdlg.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxoptionparammapdlg.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -158,6 +158,11 @@ CheckDlgButton(hwnd, IDC_NANIM2, BST_UNCHECKED); CheckDlgButton(hwnd, IDC_NAX2, BST_CHECKED); } + + // 'Use Character3 Animator' checkbox button + bool useCharacter3SkinAnimator = nMaxOptions::Instance()->GetUseCharacter3SkinAnimator(); + int flag = useCharacter3SkinAnimator ? 1 : 0; + CheckDlgButton(hwnd, IDC_USE_CHARACTER3SKINANIMATOR, flag); // hidden node. bool tmpExportHiddenNode = nMaxOptions::Instance()->ExportHiddenNodes(); @@ -288,6 +293,10 @@ OnAnimFileType(hwnd); break; + case IDC_USE_CHARACTER3SKINANIMATOR: + OnUseCharacter3SkinAnimator(hwnd); + break; + case IDC_HIDDEN_OBJ: OnHiddenObject(hwnd); break; @@ -407,6 +416,21 @@ //------------------------------------------------------------------------------ /** */ +void nMaxOptionParamMapDlg::OnUseCharacter3SkinAnimator(HWND hwnd) +{ + if (IsChecked(hwnd, IDC_USE_CHARACTER3SKINANIMATOR)) + { + nMaxOptions::Instance()->SetUseCharacter3SkinAnimator(true); + } + else + { + nMaxOptions::Instance()->SetUseCharacter3SkinAnimator(false); + } +} + +//------------------------------------------------------------------------------ +/** +*/ void nMaxOptionParamMapDlg::OnHiddenObject(HWND hwnd) { if (IsChecked(hwnd, IDC_HIDDEN_OBJ)) Modified: trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc 2009-04-14 08:10:54 UTC (rev 3302) +++ trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc 2009-04-14 08:31:47 UTC (rev 3303) @@ -243,7 +243,7 @@ } // specifies to use ram file in shared memory. - if (nMaxOptions::Instance()->UsePreviewMode()) + if (nMaxOptions::Preview == nMaxOptions::Instance()->GetExportMode()) this->arguments += "-useram "; //use ram file. iniFile->Release(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-14 08:10:58
|
Revision: 3302 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3302&view=rev Author: kimsama Date: 2009-04-14 08:10:54 +0000 (Tue, 14 Apr 2009) Log Message: ----------- Added MAXScript to only export animation data. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/menu.ms Property Changed: ---------------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/menu.ms Modified: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/menu.ms =================================================================== (Binary files differ) Property changes on: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/menu.ms ___________________________________________________________________ Added: svn:mime-type + plain/text This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-14 08:09:46
|
Revision: 3301 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3301&view=rev Author: kimsama Date: 2009-04-14 08:09:41 +0000 (Tue, 14 Apr 2009) Log Message: ----------- Added MAXScript to only export animation data. Added Paths: ----------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/exportanim.ms trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/quickexport.ms Added: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/exportanim.ms =================================================================== (Binary files differ) Property changes on: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/exportanim.ms ___________________________________________________________________ Added: svn:mime-type + plain/text Added: svn:eol-style + native Added: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/quickexport.ms =================================================================== (Binary files differ) Property changes on: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/quickexport.ms ___________________________________________________________________ Added: svn:mime-type + plain/text Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-14 02:34:24
|
Revision: 3300 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3300&view=rev Author: kimsama Date: 2009-04-14 02:34:12 +0000 (Tue, 14 Apr 2009) Log Message: ----------- Fixed utility option to make it correctly load 'export hidden' setting from nmaxtoolbox.ini. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-03 01:37:30 UTC (rev 3299) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-04-14 02:34:12 UTC (rev 3300) @@ -516,11 +516,8 @@ iniFile->SetDefault("2"); this->sampleRate = iniFile->ReadInt ("SampleRate"); - //FIXME: change it to use ReadBool() - int tmpExportHiddenNode; - iniFile->SetDefault("false"); - tmpExportHiddenNode = iniFile->ReadBool("ExportHiddenNode"); + this->exportHiddenNodes = iniFile->ReadBool("ExportHiddenNode"); iniFile->SetDefault("ntclserver"); this->saveScriptServer = iniFile->ReadString("ScriptServer"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-04-03 02:22:53
|
Revision: 3299 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3299&view=rev Author: kimsama Date: 2009-04-03 01:37:30 +0000 (Fri, 03 Apr 2009) Log Message: ----------- Fixed wrong document. ipolType uses int32 for its type not int16. Modified Paths: -------------- trunk/nebula2/code/nebula2/inc/anim2/nanimation.h Modified: trunk/nebula2/code/nebula2/inc/anim2/nanimation.h =================================================================== --- trunk/nebula2/code/nebula2/inc/anim2/nanimation.h 2009-03-30 12:47:34 UTC (rev 3298) +++ trunk/nebula2/code/nebula2/inc/anim2/nanimation.h 2009-04-03 01:37:30 UTC (rev 3299) @@ -72,7 +72,7 @@ } FOR EACH CURVE { - int16 ipolType // nAnimation::Curve::IpolType + int32 ipolType // nAnimation::Curve::IpolType int32 firstKeyIndex // index of first curve key in key pool (-1 if collapsed!) int32 isAnimated // flag, if the curve's joint is animated float[4] collapsedKey // the key value if this is a collapsed curve This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-30 12:47:43
|
Revision: 3298 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3298&view=rev Author: kimsama Date: 2009-03-30 12:47:34 +0000 (Mon, 30 Mar 2009) Log Message: ----------- Fixed the bug which generate .ini file if there is no .ini file in the 'plugcfg' directory when we open viewer option dialog. 3dsmax try to read .ini file from 'plugcfg' directory first so the generated .ini file is read but it contains no valid information. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc Modified: trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc 2009-03-27 12:24:06 UTC (rev 3297) +++ trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxvieweroptions.cc 2009-03-30 12:47:34 UTC (rev 3298) @@ -47,11 +47,28 @@ // check the .ini file exist in 3dsmax plugin directory. if (!fileServer->FileExists(iniFilename)) { - // the .ini file does not exist, so make new one. - nFile* file = fileServer->NewFileObject(); - file->Open(iniFilename.Get(), "w"); - file->Close(); - file->Release(); + // try to find the .ini file in the 'scripts\nebula' dirtectory. e.g.) d:\3dsmax\Scripts\nebula2 + iniFilename = ""; + iniFilename += GetCOREInterface()->GetDir(APP_SCRIPTS_DIR); + iniFilename += "\\"; + iniFilename += "nebula2\\"; + + nString iniFileDir = iniFilename; + + iniFilename += N_MAXEXPORT_INIFILE; + + if (!fileServer->FileExists(iniFilename)) + { + // the .ini file does not exist, so make new one. + //nFile* file = fileServer->NewFileObject(); + //file->Open(iniFilename.Get(), "w"); + //file->Close(); + //file->Release(); + + n_message("%s file does not exist in %s directory.\n", iniFilename.Get(), iniFileDir.Get()); + + return false; + } } // read viewer options. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-27 13:22:12
|
Revision: 3295 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3295&view=rev Author: kimsama Date: 2009-03-27 12:17:04 +0000 (Fri, 27 Mar 2009) Log Message: ----------- Modified to read 'nmaxtoolbox.ini' file from '$3dsmax/scripts/nebula2' directory. It is hard to recognize 'plugcfg' directory on Vista. Added Paths: ----------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/nmaxtoolbox.ini Added: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/nmaxtoolbox.ini =================================================================== --- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/nmaxtoolbox.ini (rev 0) +++ trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/nmaxtoolbox.ini 2009-03-27 12:17:04 UTC (rev 3295) @@ -0,0 +1,50 @@ +[GeneralSettings] +HomeDir='put the path of nebula2 intalled directory e.g. c:\nebula2' +ProjDir=. +BinaryPath=home:bin/win32d/ +AnimsAssign=home:export/anims/ +GfxlibAssign=home:export/gfxlib/ +GuiAssign=home:export/ +LightsAssign=home:export/ +MeshesAssign=home:export/meshes/ +ShadersAssign=home:data/shaders/ +TexturesAssign=home:export/textures/ +AnimsPath=anims: +GfxlibPath=gfxlib: +GuiPath=gui: +LightsPath=lights: +MeshesPath=meshes: +ShadersPath=shaders: +TexturesPath=textures: + +[UtilityOptions] +GeometryScale=0.01 +MaxJointPalette=24 +WeightThreshold=0.0001 +SaveMeshAs=.n3d2 +SaveAnimAs=.nanim2 +SampleRate=2 +ExportHiddenNode=false +ScriptServer=ntclserver +Verbose=2 + +[DefaultViewerSetting] +-fullscreen=false +-alwaysontop=true +-x=0 +-y=0 +-w=640 +-h=480 + +[CustomViewerSetting] +args= + +[MeshSuffix] +static= +skinned=_skinned +shadow=_shadow +skinnedshadow=_skinnedshadow +swing=_swing +collision=_collision +particle2=_particle2 + Property changes on: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/nmaxtoolbox.ini ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-27 12:27:10
|
Revision: 3294 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3294&view=rev Author: kimsama Date: 2009-03-27 12:16:27 +0000 (Fri, 27 Mar 2009) Log Message: ----------- Modified to read 'nmaxtoolbox.ini' file from '$3dsmax/scripts/nebula2' directory if it fails to read it from '$3dsmax/scripts/plugcfg' directory. It is hard to detect 'plugcfg' directory under Vista. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxdirdlg.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-03-27 11:28:45 UTC (rev 3293) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-03-27 12:16:27 UTC (rev 3294) @@ -55,12 +55,21 @@ // check the .ini file exist in 3dsmax plugin directory. if (!fileServer->FileExists(iniFilename)) { - // .ini file does not exist in '/plugcfg' directory. - n_message("%s file does not exist in '$3dsmax/plugcfg' directory.\n", - N_MAXEXPORT_INIFILE); + // try to find the .ini file in the 'scripts\nebula' dirtectory. e.g.) d:\3dsmax\Scripts\nebula2 + iniFilename = ""; + iniFilename += GetCOREInterface()->GetDir(APP_SCRIPTS_DIR); + iniFilename += "\\"; + iniFilename += "nebula2\\"; + iniFilename += N_MAXEXPORT_INIFILE; + if (!fileServer->FileExists(iniFilename)) + { + // .ini file does not exist in '/plugcfg' directory. + n_message("%s file does not exist in '$3dsmax/plugcfg' directory.\n", + N_MAXEXPORT_INIFILE); - // return a empty string. - return shdxml; + // return a empty string. + return shdxml; + } } nString homeDir; Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-03-27 11:28:45 UTC (rev 3293) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxoptions.cc 2009-03-27 12:16:27 UTC (rev 3294) @@ -84,9 +84,18 @@ // check the .ini file exist in 3dsmax plugin directory. if (!fileServer->FileExists(iniFilename)) { - // .ini file does not exist in '/plugcfg' directory. - n_listener("%s file does not exist in '$3dsmax/plugcfg' directory.", N_MAXEXPORT_INIFILE); - return 0; + // try to find the .ini file in the 'scripts\nebula' dirtectory. e.g.) d:\3dsmax\Scripts\nebula2 + iniFilename = ""; + iniFilename += GetCOREInterface()->GetDir(APP_SCRIPTS_DIR); + iniFilename += "\\"; + iniFilename += "nebula2\\"; + iniFilename += N_MAXEXPORT_INIFILE; + if (!fileServer->FileExists(iniFilename)) + { + // .ini file does not exist in '/plugcfg' directory. + n_listener("%s file does not exist in '$3dsmax/plugcfg' directory.", N_MAXEXPORT_INIFILE); + return 0; + } } nIniPrefServer* iniFile = (nIniPrefServer*)nKernelServer::Instance()->New("niniprefserver", "/iniprefsrv"); Modified: trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxdirdlg.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxdirdlg.cc 2009-03-27 11:28:45 UTC (rev 3293) +++ trunk/nebula2/code/contrib/nmax/src/pluginlibs/nmaxdirdlg.cc 2009-03-27 12:16:27 UTC (rev 3294) @@ -68,14 +68,29 @@ iniFilename += "\\"; iniFilename += N_MAXEXPORT_INIFILE; - // check the .ini file exist in 3dsmax plugin directory. + // check the .ini file exist in 3dsmax plugcfg directory. if (!fileServer->FileExists(iniFilename)) { // the .ini file does not exist, so make new one. - nFile* file = fileServer->NewFileObject(); - file->Open(iniFilename.Get(), "w"); - file->Close(); - file->Release(); + //nFile* file = fileServer->NewFileObject(); + //file->Open(iniFilename.Get(), "w"); + //file->Close(); + //file->Release(); + + //FIXME: put an messago box + // try to find the .ini file in the 'scripts\nebula' dirtectory. e.g.) d:\3dsmax\Scripts\nebula2 + iniFilename = ""; + iniFilename += GetCOREInterface()->GetDir(APP_SCRIPTS_DIR); + iniFilename += "\\"; + iniFilename += "nebula2\\"; + iniFilename += N_MAXEXPORT_INIFILE; + if (!fileServer->FileExists(iniFilename)) + { + n_message("Cannot find %s file in $3dsmax/plugcfg or $3dsmax/scripts/nebula2 directory.", + iniFilename.Get()); + + return; + } } // read values from .ini file and specify those to dialog controls. @@ -253,12 +268,25 @@ } else { + nFileServer2* fileServer = nFileServer2::Instance(); + // write the values to .ini file. nString iniFilename; iniFilename += GetCOREInterface()->GetDir(APP_PLUGCFG_DIR); iniFilename += "\\"; iniFilename += N_MAXEXPORT_INIFILE; + // check the .ini file exist in 3dsmax plugin directory. + if (!fileServer->FileExists(iniFilename)) + { + // try to find the .ini file in the 'scripts\nebula' dirtectory. e.g.) d:\3dsmax\Scripts\nebula2 + iniFilename = ""; + iniFilename += GetCOREInterface()->GetDir(APP_SCRIPTS_DIR); + iniFilename += "\\"; + iniFilename += "nebula2\\"; + iniFilename += N_MAXEXPORT_INIFILE; + } + nIniPrefServer* iniFile = (nIniPrefServer*)nKernelServer::Instance()->New("niniprefserver", "/iniprefsrv"); iniFile->SetFileName(iniFilename); iniFile->SetSection("GeneralSettings"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-27 12:24:26
|
Revision: 3297 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3297&view=rev Author: kimsama Date: 2009-03-27 12:24:06 +0000 (Fri, 27 Mar 2009) Log Message: ----------- nmaxtoolbox version 0.9 - Modified to find 'nmaxtoolbox.ini' file in the '$3dsmax/scripts/nebula2' if it fails to read the file in the '$3dsmax/scripts/plugcfg' directory. Under Vista, the 'plugcfg' directory is located under different directory. - Now it does not use custom attribute's vertex option. If an artist specify any unknown custom attribute which does not contain vertex option, the plug-in only exports vertex position. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms Modified: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms =================================================================== --- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms 2009-03-27 12:18:41 UTC (rev 3296) +++ trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/scripts/nebula2/about.ms 2009-03-27 12:24:06 UTC (rev 3297) @@ -11,7 +11,7 @@ ( GroupBox grp1 "" pos:[4,7] width:316 height:124 label lblDesc "nMaxToolBox for Nebula2 3DS Max Toolkit." pos:[90,26] width:217 height:20 - label lblVersion "Release Version 0.8" pos:[90,49] width:210 height:20 + label lblVersion "Release Version 0.9" pos:[90,49] width:210 height:20 label lblCopyWrite "Copyright (c) 2004 Kim, Hyoun Woo." pos:[89,102] width:210 height:20 label lblLicense "This product is licensed under the terms of the Nebula License." pos:[89,70] width:221 height:31 bitmap bmpN2Logo pos:[15,26] width:64 height:64 fileName:"nebula2/n2logo256.bmp" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-27 12:23:08
|
Revision: 3296 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3296&view=rev Author: kimsama Date: 2009-03-27 12:18:41 +0000 (Fri, 27 Mar 2009) Log Message: ----------- Moved to 'nebula2' directory. Removed Paths: ------------- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/plugcfg/nmaxtoolbox.ini Deleted: trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/plugcfg/nmaxtoolbox.ini =================================================================== --- trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/plugcfg/nmaxtoolbox.ini 2009-03-27 12:17:04 UTC (rev 3295) +++ trunk/nebula2/code/contrib/nmax/maxscripts/nmaxtoolbox/plugcfg/nmaxtoolbox.ini 2009-03-27 12:18:41 UTC (rev 3296) @@ -1,50 +0,0 @@ -[GeneralSettings] -HomeDir='put the path of nebula2 intalled directory e.g. c:\nebula2' -ProjDir=. -BinaryPath=home:bin/win32d/ -AnimsAssign=home:export/anims/ -GfxlibAssign=home:export/gfxlib/ -GuiAssign=home:export/ -LightsAssign=home:export/ -MeshesAssign=home:export/meshes/ -ShadersAssign=home:data/shaders/ -TexturesAssign=home:export/textures/ -AnimsPath=anims: -GfxlibPath=gfxlib: -GuiPath=gui: -LightsPath=lights: -MeshesPath=meshes: -ShadersPath=shaders: -TexturesPath=textures: - -[UtilityOptions] -GeometryScale=0.01 -MaxJointPalette=24 -WeightThreshold=0.0001 -SaveMeshAs=.n3d2 -SaveAnimAs=.nanim2 -SampleRate=2 -ExportHiddenNode=false -ScriptServer=ntclserver -Verbose=2 - -[DefaultViewerSetting] --fullscreen=false --alwaysontop=true --x=0 --y=0 --w=640 --h=480 - -[CustomViewerSetting] -args= - -[MeshSuffix] -static= -skinned=_skinned -shadow=_shadow -skinnedshadow=_skinnedshadow -swing=_swing -collision=_collision -particle2=_particle2 - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-27 11:28:49
|
Revision: 3293 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3293&view=rev Author: kimsama Date: 2009-03-27 11:28:45 +0000 (Fri, 27 Mar 2009) Log Message: ----------- Disabled custom attribute when the plug-in retrieves vertex data. If an artist inserts unknown custom attributes which does not contain any vertex options for export, the plug-in fails to export to vertex components except vertex position. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmesh_main.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxmesh_main.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmesh_main.cc 2009-03-13 05:14:27 UTC (rev 3292) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxmesh_main.cc 2009-03-27 11:28:45 UTC (rev 3293) @@ -776,38 +776,39 @@ nMaxOptions* option = nMaxOptions::Instance(); - if( this->hasCustomAttr ) - { - // vertex normal. - if (this->ExportNormals()) - { - vector3 norm = GetVertexNormal(mesh, face, faceNo, vIdx); - vertex.SetNormal(norm); - } + // FIXME: we don't use MAX's custom attributes for filtering each of vertex components + //if( this->hasCustomAttr ) + //{ + // // vertex normal. + // if (this->ExportNormals()) + // { + // vector3 norm = GetVertexNormal(mesh, face, faceNo, vIdx); + // vertex.SetNormal(norm); + // } - // vertex color. - if (this->ExportColors()) - { - vector4 col = GetVertexColor(mesh, faceNo, vIdx); - vertex.SetColor(col); - } + // // vertex color. + // if (this->ExportColors()) + // { + // vector4 col = GetVertexColor(mesh, faceNo, vIdx); + // vertex.SetColor(col); + // } - // vertex uvs. - if (this->ExportUvs()) - { - //FIXME: is 'm' identical to map channel? - int layer = 0; - for (int m=1; m<MAX_MESHMAPS-1; m++) - { - if (mesh->mapSupport(m)) - { - vector2 uvs = GetVertexUv(mesh, faceNo, vIdx, m); - vertex.SetUv(layer++, uvs); - } - } - } - } - else + // // vertex uvs. + // if (this->ExportUvs()) + // { + // //FIXME: is 'm' identical to map channel? + // int layer = 0; + // for (int m=1; m<MAX_MESHMAPS-1; m++) + // { + // if (mesh->mapSupport(m)) + // { + // vector2 uvs = GetVertexUv(mesh, faceNo, vIdx, m); + // vertex.SetUv(layer++, uvs); + // } + // } + // } + //} + //else { // vertex normal. if (option->ExportNormals()) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-13 05:14:39
|
Revision: 3292 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3292&view=rev Author: kimsama Date: 2009-03-13 05:14:27 +0000 (Fri, 13 Mar 2009) Log Message: ----------- Updated the doc. You need to put nmaxtoolbox.ini file under different directory if you use Vista. e.g. "C:\Documents and Settings\USERNAME\Local Settings\Application Data\Autodesk\3dsmax\9 - 32bit\enu\plugcfg" Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/install.dox Modified: trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/install.dox =================================================================== --- trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/install.dox 2009-03-13 04:54:06 UTC (rev 3291) +++ trunk/nebula2/code/contrib/nmax/doc/artistdoc/doxysrc/install.dox 2009-03-13 05:14:27 UTC (rev 3292) @@ -32,7 +32,8 @@ Compile it through using 'HTML Help Workshop'. It will generate <tt>nmaxtoolbox.chm</tt> and then copy it to <tt>$3dsmax/scripts/nebula2</tt> directory to be available it within 3ds Max. - + <b>Remark:</b> User for <b>3dsmax9</b> user on <b>Vista</b> <br> + The <tt>nmaxtoolbox.ini</tt> file should be put in the <tt>'User/Administrator/AppData/Local/Autodesk/3dsmax/9-32bit/enu/plugcfg'</tt> directory not <tt>'$3dsmax9/plugcfg'</tt> directory, if not, there might be the plug-in loading error at the start up of 3dsmax. <td> </tr> </table> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-03-13 04:54:18
|
Revision: 3291 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3291&view=rev Author: kimsama Date: 2009-03-13 04:54:06 +0000 (Fri, 13 Mar 2009) Log Message: ----------- Fixed to the plug-in to be built with vs2005. Declared variable i outside of for loop to make it available to refer it out of the for loop. Modified Paths: -------------- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc Modified: trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc =================================================================== --- trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-01-28 05:09:45 UTC (rev 3290) +++ trunk/nebula2/code/contrib/nmax/src/export2/nmaxmaterial_shd.cc 2009-03-13 04:54:06 UTC (rev 3291) @@ -655,9 +655,10 @@ // it is hard to bind those control type with parameters block. #if USE_ACTIVEX_ENVELOPECURVE_CTRL // openEvent + int i = 1; tmp.Format("\t\t\t%s_modulation.selection = %s[9];\n", paramName.Get(), paramName.Get(), paramName.Get() ); openEvent += tmp; tmp.Format("\t\t\tparams = \"\"\n"); openEvent += tmp; - for( int i = 1; i<6; ++i ) + for( i = 1; i<6; ++i ) { tmp.Format("\t\t\tparams += (%s[%d] as string) + \", \"\n", paramName.Get(), i); openEvent += tmp; } @@ -707,8 +708,9 @@ { #if USE_ACTIVEX_ENVELOPECURVE_CTRL // open event + int i = 1; tmp.Format("\t\t\tparams = \"\"\n"); openEvent += tmp; - for( int i = 1; i< 14; ++i ) + for( i = 1; i< 14; ++i ) { tmp.Format("\t\t\tparams += (%s[%d] as string) + \", \"\n", paramName.Get(), i); openEvent += tmp; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2009-01-28 05:09:54
|
Revision: 3290 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3290&view=rev Author: kimsama Date: 2009-01-28 05:09:45 +0000 (Wed, 28 Jan 2009) Log Message: ----------- Fixed shdtuner to run. It needs 'renderpath' assignment due to gfx side code has been changed the tool was written. Modified Paths: -------------- trunk/nebula2/code/contrib/shdtuner/src/shdtuner/nshdtunerapp_main.cc Modified: trunk/nebula2/code/contrib/shdtuner/src/shdtuner/nshdtunerapp_main.cc =================================================================== --- trunk/nebula2/code/contrib/shdtuner/src/shdtuner/nshdtunerapp_main.cc 2008-12-09 04:28:33 UTC (rev 3289) +++ trunk/nebula2/code/contrib/shdtuner/src/shdtuner/nshdtunerapp_main.cc 2009-01-28 05:09:45 UTC (rev 3290) @@ -263,6 +263,7 @@ fileSvr->SetAssign("data", "home:data"); fileSvr->SetAssign("export", "home:export"); fileSvr->SetAssign("scripts", "data:scripts"); + fileSvr->SetAssign("renderpath", "data:shaders"); fileSvr->SetAssign("gfxlib", "export:gfxlib"); fileSvr->SetAssign("anims", "export:anims"); fileSvr->SetAssign("meshes", "export:meshes"); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ki...@us...> - 2008-12-09 04:28:37
|
Revision: 3289 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3289&view=rev Author: kimsama Date: 2008-12-09 04:28:33 +0000 (Tue, 09 Dec 2008) Log Message: ----------- In recent dxsdk D3D changed effect compiler so syntax of effect files need to be fixed with setting compileFlags to D3DXSHADER_USE_LEGACY_D3DX9_31_DLL in nd3d9shader_main.cc. Modified Paths: -------------- trunk/nebula2/code/nebula2/src/gfx2/nd3d9shader_main.cc Modified: trunk/nebula2/code/nebula2/src/gfx2/nd3d9shader_main.cc =================================================================== --- trunk/nebula2/code/nebula2/src/gfx2/nd3d9shader_main.cc 2008-05-29 10:41:39 UTC (rev 3288) +++ trunk/nebula2/code/nebula2/src/gfx2/nd3d9shader_main.cc 2008-12-09 04:28:33 UTC (rev 3289) @@ -105,9 +105,9 @@ ID3DXBuffer* errorBuffer = 0; #if N_D3D9_DEBUG - DWORD compileFlags = D3DXSHADER_DEBUG | D3DXSHADER_SKIPOPTIMIZATION; + DWORD compileFlags = D3DXSHADER_DEBUG | D3DXSHADER_SKIPOPTIMIZATION | D3DXSHADER_USE_LEGACY_D3DX9_31_DLL; #else - DWORD compileFlags = 0; + DWORD compileFlags = D3DXSHADER_USE_LEGACY_D3DX9_31_DLL; #endif // create include file handler This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: Natalee <Ema...@cd...> - 2008-09-21 03:57:30
|
Dear neb...@li...: We can Promote your Marketing: - Provide e-mail list as your needs. We can provide the list according to your requirements. - Custom built e-mail list, then send your email message to the list. - Online e-mail send system, easily Create, Send, and Track your e-mail Newsletters. * We offer also Server for send out emails. We believe we could help your business. Service Support Ser...@zj... Thank you. The e-mail only send to neb...@li.... |
From: <va...@us...> - 2008-05-29 10:41:47
|
Revision: 3288 http://nebuladevice.svn.sourceforge.net/nebuladevice/?rev=3288&view=rev Author: vakula Date: 2008-05-29 03:41:39 -0700 (Thu, 29 May 2008) Log Message: ----------- fixed FFP shaders to compile with recent DXSDK Modified Paths: -------------- trunk/nebula2/data/shaders/fixed/gui.fx trunk/nebula2/data/shaders/fixed/passes.fx trunk/nebula2/data/shaders/fixed/phases.fx trunk/nebula2/data/shaders/fixed/shape.fx trunk/nebula2/data/shaders/fixed/stencil_plane.fx Modified: trunk/nebula2/data/shaders/fixed/gui.fx =================================================================== --- trunk/nebula2/data/shaders/fixed/gui.fx 2007-10-31 10:42:04 UTC (rev 3287) +++ trunk/nebula2/data/shaders/fixed/gui.fx 2008-05-29 10:41:39 UTC (rev 3288) @@ -30,7 +30,7 @@ { WorldTransform[0] = <Model>; ViewTransform = <View>; - ProjectionTransform = <Projection>; + ProjectionTransform = <Projection>; ZWriteEnable = False; ZEnable = False; @@ -47,8 +47,8 @@ StencilZFail = KEEP; StencilPass = KEEP; - VertexShader = 0; - PixelShader = 0; + VertexShader = NULL; + PixelShader = NULL; Sampler[0] = <DiffSampler>; Modified: trunk/nebula2/data/shaders/fixed/passes.fx =================================================================== --- trunk/nebula2/data/shaders/fixed/passes.fx 2007-10-31 10:42:04 UTC (rev 3287) +++ trunk/nebula2/data/shaders/fixed/passes.fx 2008-05-29 10:41:39 UTC (rev 3288) @@ -15,15 +15,15 @@ pass p0 { ViewTransform = <View>; - ProjectionTransform = <Projection>; + ProjectionTransform = <Projection>; ColorWriteEnable = RED|GREEN|BLUE|ALPHA; NormalizeNormals = True; ZEnable = True; ZFunc = LessEqual; StencilEnable = False; DepthBias = 0.0f; - PixelShader = 0; - SpecularEnable = False; + PixelShader = NULL; + SpecularEnable = False; FogEnable = True; FogColor = <FogColor>; Modified: trunk/nebula2/data/shaders/fixed/phases.fx =================================================================== --- trunk/nebula2/data/shaders/fixed/phases.fx 2007-10-31 10:42:04 UTC (rev 3287) +++ trunk/nebula2/data/shaders/fixed/phases.fx 2008-05-29 10:41:39 UTC (rev 3288) @@ -13,7 +13,7 @@ AlphaBlendEnable = True; AlphaTestEnable = False; Lighting = True; - VertexShader = 0; + VertexShader = NULL; FogEnable = True; } } @@ -23,7 +23,7 @@ pass p0 { ZWriteEnable = True; - VertexShader = 0; + VertexShader = NULL; FogEnable = True; Lighting = True; @@ -47,7 +47,7 @@ AlphaBlendEnable = False; AlphaTestEnable = False; AlphaFunc = GreaterEqual; - VertexShader = 0; + VertexShader = NULL; FogEnable = True; LightEnable[0] = True; Lighting = True; @@ -62,7 +62,7 @@ AlphaBlendEnable = False; AlphaTestEnable = False; AlphaFunc = GreaterEqual; - VertexShader = 0; + VertexShader = NULL; FogEnable = False; LightEnable[0] = True; Lighting = True; @@ -77,7 +77,7 @@ AlphaBlendEnable = False; AlphaTestEnable = True; AlphaFunc = GreaterEqual; - VertexShader = 0; + VertexShader = NULL; FogEnable = True; LightEnable[0] = True; Lighting = True; @@ -92,7 +92,7 @@ AlphaBlendEnable = False; AlphaTestEnable = False; AlphaFunc = GreaterEqual; - VertexShader = 0; + VertexShader = NULL; FogEnable = False; LightEnable[0] = False; Lighting = False; Modified: trunk/nebula2/data/shaders/fixed/shape.fx =================================================================== --- trunk/nebula2/data/shaders/fixed/shape.fx 2007-10-31 10:42:04 UTC (rev 3287) +++ trunk/nebula2/data/shaders/fixed/shape.fx 2008-05-29 10:41:39 UTC (rev 3288) @@ -9,10 +9,10 @@ shared float4x4 View; // the view matrix shared float4x4 Projection; // the projection matrix -float4x4 TextureTransform0 = {1.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 1.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f }; +float4x4 TextureTransform0 = { 1.0, 0.0, 0.0, 0.0, + 0.0, 1.0, 0.0, 0.0, + 0.0, 0.0, 1.0, 0.0, + 0.0, 0.0, 0.0, 1.0 }; float4 MatDiffuse; //------------------------------------------------------------------------------ @@ -20,66 +20,64 @@ { pass p0 { - WorldTransform[0] = <Model>; - TextureTransform[0] = <TextureTransform0>; - ViewTransform = <View>; - ProjectionTransform = <Projection>; + WorldTransform[0] = <Model>; + TextureTransform[0] = <TextureTransform0>; + ViewTransform = <View>; + ProjectionTransform = <Projection>; - ColorWriteEnable = RED|GREEN|BLUE|ALPHA; - NormalizeNormals = True; - ZEnable = True; - ZFunc = LessEqual; - StencilEnable = False; - DepthBias = 0.0f; - PixelShader = 0; - SpecularEnable = False; + ColorWriteEnable = RED | GREEN | BLUE | ALPHA; + NormalizeNormals = True; + ZEnable = True; + ZFunc = LessEqual; + StencilEnable = False; + DepthBias = 0.0; + PixelShader = NULL; + SpecularEnable = False; - Ambient = {0.8, 0.8, 0.8, 1.0f}; - LightEnable[0] = False; - LightAmbient[0] = {1.0, 1.0, 1.0, 1.0f}; - LightDiffuse[0] = {1.0, 1.0, 1.0, 1.0f}; - LightSpecular[0] = {1.0, 1.0, 1.0, 1.0f}; - LightPosition[0] = {0.0, 0.0, 0.0}; - LightRange[0] = 500000.0; - LightAttenuation0[0] = 1.0; - LightAttenuation1[0] = 0.0; - LightAttenuation2[0] = 0.0; + Ambient = {0.8, 0.8, 0.8, 1.0 }; + LightEnable[0] = False; + LightAmbient[0] = { 1.0, 1.0, 1.0, 1.0 }; + LightDiffuse[0] = { 1.0, 1.0, 1.0, 1.0 }; + LightSpecular[0] = { 1.0, 1.0, 1.0, 1.0 }; + LightPosition[0] = { 0.0, 0.0, 0.0 }; + LightRange[0] = 500000.0; + LightAttenuation0[0] = 1.0; + LightAttenuation1[0] = 0.0; + LightAttenuation2[0] = 0.0; // LightType must be the last light state that is set! - LightType[0] = POINT; + LightType[0] = POINT; - ZWriteEnable = False; - AlphaBlendEnable = True; - AlphaTestEnable = False; - Lighting = True; - VertexShader = 0; - FogEnable = False; + ZWriteEnable = False; + AlphaBlendEnable = True; + AlphaTestEnable = False; + Lighting = True; + VertexShader = NULL; + FogEnable = False; - CullMode = None; - SrcBlend = SrcAlpha; - DestBlend = InvSrcAlpha; - MaterialAmbient = <MatDiffuse>; - MaterialDiffuse = <MatDiffuse>; - MaterialSpecular = { 0.0, 0.0, 0.0, 0.0 }; + CullMode = None; + SrcBlend = SrcAlpha; + DestBlend = InvSrcAlpha; + MaterialAmbient = <MatDiffuse>; + MaterialDiffuse = <MatDiffuse>; + MaterialSpecular = { 0.0, 0.0, 0.0, 0.0 }; - FVF = XYZ | NORMAL | TEX1; + FVF = XYZ | NORMAL | TEX1; - Texture[0] = 0; - TexCoordIndex[0] = 0; + Texture[0] = NULL; + TexCoordIndex[0] = 0; TextureTransformFlags[0] = Count2; - ColorOp[0] = SelectArg1; - ColorArg1[0] = Current; + ColorOp[0] = SelectArg1; + ColorArg1[0] = Current; - ColorOp[1] = Disable; + ColorOp[1] = Disable; - AlphaOp[0] = SelectArg1; - AlphaArg1[0] = Diffuse; + AlphaOp[0] = SelectArg1; + AlphaArg1[0] = Diffuse; - AlphaOp[1] = Disable; + AlphaOp[1] = Disable; - - //FillMode = Wireframe; + //FillMode = Wireframe; } } - Modified: trunk/nebula2/data/shaders/fixed/stencil_plane.fx =================================================================== --- trunk/nebula2/data/shaders/fixed/stencil_plane.fx 2007-10-31 10:42:04 UTC (rev 3287) +++ trunk/nebula2/data/shaders/fixed/stencil_plane.fx 2008-05-29 10:41:39 UTC (rev 3288) @@ -15,7 +15,7 @@ { WorldTransform[0] = <Model>; ViewTransform = <View>; - ProjectionTransform = <Projection>; + ProjectionTransform = <Projection>; ZWriteEnable = False; ZEnable = False; @@ -23,8 +23,8 @@ CullMode = None; - VertexShader = 0; - PixelShader = 0; + VertexShader = NULL; + PixelShader = NULL; ColorWriteEnable = RED|GREEN|BLUE|ALPHA; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |