Announcement

Collapse
No announcement yet.

Basic Exterior and Interior Set up

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    I see. The LEssons' PDFs do indeed show a max 2017.
    Perhaps getting a max 2017 demo would help you translating the scenes you're interested in (saving them as max 2014).
    We should make the system requirements more obvious, i think, good catch.

    EDIT:we'll be converting the files and re-upload the packages including the previous versions. will let you know when it's done.
    Last edited by ^Lele^; 21-10-2018, 08:34 AM.
    Lele
    Trouble Stirrer in RnD @ Chaos
    ----------------------
    emanuele.lecchi@chaos.com

    Disclaimer:
    The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

    Comment


    • #32
      The thing i find confusing about some of the theory threads that are put out, are that they get so convoluted with high level information, with people talking as though everyone is at their level... the whole things becomes an informational swamp. The above link about albedo darkening (i think thats what it was about) is a good example. Another excellent example was the mess of LWF, or the material subdivision nightmare threads from pre 3.4 days.. so confusing. Now obviously you dont want the high level talks to stop, as how would you ever learn..BUT i do wish that people with the brains would think about how the threads can sometimes expand into a incoherent mess.

      To sum up, for me, it would be great if there were some concise, distinct....conclusion and summation to these theoretical threads, or in a sticky or something. And the clever people think a little more about their posts for the thickos like me.

      The albedo should be darker, this is why, to sum up use the multiplier...

      Linear workflow is important because.....to sum up use these options....

      that sort of thing
      Last edited by francomanko; 21-10-2018, 04:38 PM.
      e: info@adriandenne.com
      w: www.adriandenne.com

      Comment


      • #33
        It's the nature of an open forum, i'm afraid.
        Plus, at least in my case, a serious form of unstoppable dribble.

        There are a few tricks to forum navigation, though: find your favourite (ie. trusted) sources, and follow those only, if the noise is too high.
        It's to those you want to ask the "resuming" questions as well.
        You can now summon people to reply, with the @ trick (like so: francomanko) , making direct questions a lot easier to spot, and answer.

        We'll anyway endeavour to create more guides, and ideally a few cheatsheets with the gotchas and bullet points, where possible.
        Lele
        Trouble Stirrer in RnD @ Chaos
        ----------------------
        emanuele.lecchi@chaos.com

        Disclaimer:
        The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

        Comment


        • #34
          i dont mind the dribble as long as theres a bib at the end to catch it
          e: info@adriandenne.com
          w: www.adriandenne.com

          Comment


          • #35
            Originally posted by ^Lele^ View Post
            I see. The LEssons' PDFs do indeed show a max 2017.
            Perhaps getting a max 2017 demo would help you translating the scenes you're interested in (saving them as max 2014).
            We should make the system requirements more obvious, i think, good catch.

            EDIT:we'll be converting the files and re-upload the packages including the previous versions. will let you know when it's done.
            Waiting for the good new, i hope i could learn something once i can have the files, thanks in advance
            Best regards,
            Jackie Teh
            --

            3ds Max 2023, V-Ray 7 Hotfix 1 [7.00.05 build 32872]
            AMD Ryzen 9 7950X 16-Core Processor@4.50 GHz | 64GB RAM | Nvidia RTX 4090
            Website: https://www.sporadicstudio.com
            Email: info@sporadicstudio.com
            YouTube: https://www.youtube.com/c/SporadicStudio

            Comment


            • #36
              I'm going to put my two cents in. I'm new to this forum, but not new to V-Ray or Max.

              The main issue, I think he's trying to say, is that it's hard to sort the senior data from the junior data. Everything is lumped together and so you have to wade through a ton of stuff to find out what's really important to what's of lesser importance. And a lot of it is false or incorrect data, but how do you tell that without practice?

              To just cover one topic, which is renders too dark or too light, I'd say, from my experience that it's usually a GI issue. As in the GI inside V-Ray is calculated incorrectly and so gives you a render which is too dark or too light, depending on the materials in your scene.

              I've covered the data in full in this tutorial, feel free to have a look and see if it helps.

              Understanding Global Illumination - Handling Renders which are too dark or too light

              https://youtu.be/pBvj-JPchnw

              Kind regards, Tom
              3ds max 2018, Vray 3.6 user
              Intel i7 6700k @4.00 Ghz | 32GB RAM | Nvidia GTX 1070 (8GB)
              https://www.youtube.com/leonleon51
              https://mightyvisage.co.uk/

              Comment


              • #37
                Hi Tom,

                TL;DR be very careful of your diffuse values!


                I'd be careful about some of the wording and ideas in your video. Vray calculates the GI correctly every time regardless of what colour you give it and in your examples when you're getting a result you're unhappy with, you're duplicating a material, changing it's diffuse value and putting it into an override so that vray sees a different diffuse to do it's bounce light calculation on. If the diffuse you're choosing to start with is providing an unnatural result, the reason is that you're using an unrealistic diffuse colour value to start with. You're drawing that conclusion already but asking chaos to put in extra controls to compensate for some bad input values and you're going to end up with more complex scenes that are slower and harder to manage, here's what's going on.

                The colour of objects in the real world are far more boring than our eyes show us. Likewise, when we shoot a picture with a camera as reference and colour pick values from the image, the camera's job is to give us a pretty picture rather than be an accurate colour recording device so those colour values are skewed and incorrect. As you've found with your use of overrides, colours are way less rich and contrast in real life so if you want vray or any other GI engine to give you natural looking bounce light, you have to feed it with realistic colour values to start with.

                If you want to get accurate values to start with you've two choices, either shoot reference photos with your camera and then linearize them to take away the toning which makes it a pretty picture or alternatively get yourself a colour sampler like a nix sensor - you put this wee device on a surface, hit a button and it gives you an RGB value of the surface it's sitting on and you can plug that right into vray as an accurate diffuse. For example, I colour picked a load of black objects on my desk - a keyboard, a wacom tablet, my mouse mat and what I'd consider to be black or very very dark at least was actually at rgb 50,50,50 our of 255. It's a time consuming process and in film look development you normally have to shoot a tonne of reference photos with a macbeth chart in the image, you linearize the images and this'll give you much more accurate values to start with. It's the luminance that kills you more so than saturation!

                There was an awesome video on vimeo using a colorchecker passport to flatten images but it's been taken down, I'll try and fish an alternative out and post it here. You've had some problems with bounce lighting looking bad and it all comes down to garbage in, garbage out in this case - the GI will give you the correct result for whatever you give it so if you give it a wrong diffuse, expect a wrong gi result. This is not really chaos' issue same as any other render maker, it's more that as artists we need to add in accurate data capture into our process!

                Comment


                • #38
                  Hey,
                  You got some amazing advice here, i will try to chime in.

                  1. Losing Detail in large environments on my materials. Such as cobblestone, concrete and precast. Using poliigon materials with converter right now, then using Vraydisplacement mod and detaching the displacement map on materials if needed.
                  It depends of what you want to be main focus and the objective of the image you are creating, basically you need to make sure what you want to show special attention to concrete wall, either in additional fill in light to accentuate concrete details by highlights and shadows or by controlling material properties like reflection etc. Good start would be to learn from film scenography.

                  2. Creating Natural materials without blowing up my rendering time. I was told to use Vrayfur for grass but it seems to wreck my machine which is a new workstation. Along with water, I use pretty much the same base diffuse material as glass but adding a noise map. Works okay but not great.
                  Feel free to fake it and do whatever it needs to get you right result, i know more than often that can get you in wrong direction, but again when analyzing real world photography you can conclude that sometimes photo can look like bad CGI. Anyhow make sure to get right tool for what you need if you encounter such problems, vray fur is great tool but not capable of reproducing grass details at least not for today's standards.

                  3. Lighting. What is the main difference between Sun and Dome light for exteriors? I have been trying to use HDRI Maps on my dome lights and environment map it works well but I dont fully understand what controls the exposure and lighting levels. I have played with the HDRI Map render settings but I feel like this is wrong. Also Lighting in interiors seems to either get super blown out or super dark, and once i try to blend internal and external lighting I have zero control.
                  There is no differences except subtle real world details that Vray sky from obvious reason cannot reproduce, those include cloud and ground details etc. No photographer expects to make one shot and pack his bags. However you have all sorts of tricks and equipment at your disposal, for instance instead of multi bracketing you have control of every light intensity, material and 32bit images that can save you highlights and shadows even in post. You can use any type of lights to fill in dark corners but this is not something related to 3d it is more photography related issue. If you approach it with unrealistic expectations it will be shown in final results, so try to avoid "easy" solutions like adding one light in the center of the room that is too dark and uncheck affect specular, reflection and make it invisible and expect that result will look like amazing.
                  That skill is so specific, even old photographers learn about it something new every day on their job, as it is unique to every location (space), you can only fine tune it to certain extent but never learn it in conventional terms, instead you will rely more on experience and practice as you go along.

                  4. Overall Exposure and Camera settings. I have been taught to use 3ds max physical camera for rendering in vray. I just don't know how to drive my exposure settings in the environment tab or if I should even use that setting group to do. I often start scenes fighting either super dark or very over exposed lighting. Do I use Vray exposure control? Do I use the physical camera to drive exposure and control it? Is it a blend of exposure controls and lighting parameters?
                  You need constant values to understand intensity, if you ever used camera for such task you will know why. No automation will get you there, give your camera fixed value and avoid unnecessary unknowns. If you know that at ISO 100, f-stop 16 and exposure 125 is something more or less used on sunny day you will also know that those values relate to intensity your scene lights output.
                  You are right it is blend, but if you blend it at least you can make sure you blend it in "real world" values. Photographers use multi-bracketing to pull out overblown highlights and overly dark shadows, you do not have to do this necessarily if you know what you want to achieve as final result, but you need to anticipate how that final result should look like based on your experience.
                  As an example, you have setup your scene and you want to reproduce real photo (btw. that would be great exercise for you) like interior with incandescent lights ON with exterior totally visible and nothing is overblown but everything have right intensity... So basically if you ever had camera in your hands this is no one shot and go scenario.
                  You need to ball park from experience outside and inside camera values (use "real" fixed values) and if you know those values (from your experience) you will be able to use them as starting ground to equalize difference and control intensities of your light sources. As i said earlier this is something that even best photographers are struggling with and by no means it is related to GI, samples or other technical aspects of any render engine.
                  You can find nice tutorials online or even books that tackle those issues but it is photography related "issue" .

                  5. What is the best way to fill a scene without ramping up render times? I know using Vrayproxy and Xrefs are a good start, but ive also seem people use pre rendered planes and instancing of lower poly models depending on needs.
                  This is relative because we all have different machines with different capabilities, by using Proxies you trade off with speed but you get "working" performance sooner or later everyone faces such dilemma and you will learn over time what gives you best results.

                  My main goals.
                  1. Figure out a good base line set up for both exterior and interior rendering. In terms of lighting and material set up along with asset control and usage.
                  Try to use real units and values, if anything happens and you stuck at some problem you will have much more resources to consult.

                  2. Understand how to control my scene lighting, and render quality. Would like to be able to trouble shoot and solve my own problems such as over or under expose scenes and noise. How to control and use interior and exterior lighting together for a more realistic effect.
                  Real values and learning from photography. Render quality, samples GI and all those things are already there soon you set Vray as Render engine, Chaos did great job and defaults works fine you will more often end up lowering default values as they will get you job done then raising them.

                  3. How to use materials and what processes to apply to my 3D geometry to improve time and overall quality.
                  Try to use simplistic approach, thankfully there are already bunch of software like substance painter, designer, photoshop so you can avoid 3dsmax node nightmare and they will export what you need for any engine, if by any chance you need to adjust those assets you can simply fire up SP and re-export textures of particular asset.
                  You are also free to use nodes in max but more than often they do affect performance. Don't be one of those people who make towel shader with 100 nodes (unnecessarily) and defeat the purpose to that extent that it would be better to use decimated geometry instead as it would render faster and look nicer...
                  It will look more complicated at first but it's not, i am sure that by learning something additionally won't make you miserable and it will give you edge

                  4. Understand when and why to use certain scene assets or tools over others such as Vray Sun over Dome light and HDRI. Or Vrayfur vs displacement mod vs just post processing for grass. The same goes for water and glass. I understand how to make a basic glass material but I would like a deeper understanding.
                  You do not need to post process grass, there is thousands assets out there that can give you amazing results and it will be much easier to render. Don't get me wrong, try to focus on more basic things for now and one by one you will master those also.

                  5. The best use for Vray render elements for post production, I have seen beauty pass composting and understand it well. I just want to know how to best set up my 3d scene to get the best post production tools. ( I am advanced in photoshop )
                  You can truly get away just with 32bit EXR without any elements 99.99% of the time and get amazing results.

                  Whatever you do, you keep on learning and try not to focus on settings too much as they come and go. You can learn about inner workings of Render engine you prefer as it is nice to learn new things but most of the issues you are having are not related to engine.
                  Vray is already there, quite capable and pretty bullet proof that you do not need to change any single option to make it work better out of the box.
                  Learn from history and art and take your time, maybe it seems like slow process right now as you maybe eager but at the end it will get you faster to desirable results as you will use all that knowledge people of the past selflessly gave to us to your advantage, you will see there are things from 500-600 years ago so revolutionary but yet so timeless and applicable in this modern times you wont believe it.

                  Take care,
                  Ivan


                  Last edited by Ivan1982; 27-10-2018, 04:49 AM.

                  Comment


                  • #39
                    Originally posted by joconnell View Post
                    Hi Tom,

                    Be very careful of your diffuse values!

                    Vray calculates the GI correctly every time regardless of what colour you give it and in your examples when you're getting a result you're unhappy with, you're duplicating a material, changing it's diffuse value and putting it into an override so that vray sees a different diffuse to do it's bounce light calculation on. If the diffuse you're choosing to start with is providing an unnatural result, the reason is that you're using an unrealistic diffuse colour value to start with. You're drawing that conclusion already but asking chaos to put in extra controls to compensate for some bad input values and you're going to end up with more complex scenes that are slower and harder to manage, here's what's going on.

                    The colour of objects in the real world are far more boring than our eyes show us. Likewise, when we shoot a picture with a camera as reference and colour pick values from the image, the camera's job is to give us a pretty picture rather than be an accurate colour recording device so those colour values are skewed and incorrect. As you've found with your use of overrides, colours are way less rich and contrast in real life so if you want vray or any other GI engine to give you natural looking bounce light, you have to feed it with realistic colour values to start with.

                    If you want to get accurate values to start with you've two choices, either shoot reference photos with your camera and then linearize them to take away the toning which makes it a pretty picture or alternatively get yourself a colour sampler like a nix sensor - you put this wee device on a surface, hit a button and it gives you an RGB value of the surface it's sitting on and you can plug that right into vray as an accurate diffuse. For example, I colour picked a load of black objects on my desk - a keyboard, a wacom tablet, my mouse mat and what I'd consider to be black or very very dark at least was actually at rgb 50,50,50 our of 255. It's a time consuming process and in film look development you normally have to shoot a tonne of reference photos with a macbeth chart in the image, you linearize the images and this'll give you much more accurate values to start with. It's the luminance that kills you more so than saturation!

                    There was an awesome video on vimeo using a colorchecker passport to flatten images but it's been taken down, I'll try and fish an alternative out and post it here. You've had some problems with bounce lighting looking bad and it all comes down to garbage in, garbage out in this case - the GI will give you the correct result for whatever you give it so if you give it a wrong diffuse, expect a wrong gi result. This is not really chaos' issue same as any other render maker, it's more that as artists we need to add in accurate data capture into our process!
                    Thank you very much for the advice. It's really, really helpful!

                    Some of it I've heard before, but I haven't come to a conclusion on how to use the data in V-Ray. For example, if I set a diffuse of 50,50,50 - even though that would be correct for a black material, what I'm going to end up with in the render is a grey material. I could then darken that in post, but that's not really the goal here. What we want to do is get an accurate render out of the box. I know the reverse also applies for white, nothing is going to be 255,255,255. A white wall is usually closer to 180,180,180. But again, it's going to render out grey, not white.

                    I know the data you have is correct and I understand most of what you're saying. I'm just missing how to actually apply this inside V-Ray. If you happen to find the old vimeo video I'm sure that would be really helpful. Otherwise, any other advice on this matter I'd really appreciate.

                    Like I say thank you for the very helpful feedback, I'll go through your advice and apply it and see where I get to. It definitely help sets me in the right direction and gives me a good idea of what to research from here.


                    Kind regards,


                    Tom
                    3ds max 2018, Vray 3.6 user
                    Intel i7 6700k @4.00 Ghz | 32GB RAM | Nvidia GTX 1070 (8GB)
                    https://www.youtube.com/leonleon51
                    https://mightyvisage.co.uk/

                    Comment


                    • #40
                      Here's the last pain in the ass thing!

                      So when you take a photo with your digital camera, the camera records what's in front of it in the real world (lets say our 50,50,50 black) in the very boring and washed out colour that the world actually is. This however doesn't make for a pretty picture and likewise, our eyes don't perceive colour in the same flat boring way either! So to make the picture much more vibrant and closer to what we saw with our own eyes, the camera will take the data it's recorded and then do it's own colour correction on it, adding some contrast and also depending on which manufacturer it is, push certain tones to make them more appealing - skin tones or green for landscapes for example. Vray on the other hand gives you the pure untouched linear result of your render, it'd be closer to the less contrasty, realistic colour that the real world has without any extra bits done to it to make it prettier. So what you've to do afterwards is add in the equivalent of the camera's tone mapping / colour science to add in a bit of contrast and make it look more like what your eye expects. This is the main advantage that some users found with corona or fstorm as by default, they all have some kind of camera curve turned on in their framebuffer to add in the contrast we expect. The flipside to that is if you save out render passes that have had gamma / brightness adjustments made to them, if you do a breakapart and recombine, the pretty looking camera curve has pulled the data away from being linear and so you'll get incorrect results which look unnatural.

                      That video seems to be gone unfortunately but was up here - maybe poke the author to see can he put it up somewhere else? http://bradfolio.com/tutorials/eat-3...ence-workflow/

                      There's some bits here too - https://corona-renderer.com/forum/in...?topic=10409.0

                      I'll see is there a replacement video about, it's a really solid fundamental that you'll need or as you've found, you'll get unnatural looking lighting results.

                      Here's a wee sensor that isn't pricey that'll give you accurate values - https://www.nixsensor.com/nix-mini/

                      Back if I find anything else useful!

                      Comment


                      • #41
                        Originally posted by joconnell View Post
                        That video seems to be gone unfortunately but was up here - maybe poke the author to see can he put it up somewhere else? http://bradfolio.com/tutorials/eat-3...ence-workflow/
                        I finally found it, someone's uploaded to youtube. Here:

                        https://www.youtube.com/watch?v=yPtpTIwyptM

                        Thanks for that. I've watched through it once, you've given me a load of homework to do.

                        So I'll go through it again and again and look in a dictionary for all the words I don't understand, so it's clear. And I'll go through all the other links and bits you've laid out.

                        Thanks again, I really appreciate your help in the matter - you're making me a better artist.

                        Cheers, Tom
                        3ds max 2018, Vray 3.6 user
                        Intel i7 6700k @4.00 Ghz | 32GB RAM | Nvidia GTX 1070 (8GB)
                        https://www.youtube.com/leonleon51
                        https://mightyvisage.co.uk/

                        Comment


                        • #42
                          Originally posted by leon0101 View Post
                          The main issue, I think he's trying to say, is that it's hard to sort the senior data from the junior data. Everything is lumped together and so you have to wade through a ton of stuff to find out what's really important to what's of lesser importance. And a lot of it is false or incorrect data, but how do you tell that without practice?
                          Join date and number of posts will give you the first clues.
                          Further checking the tone and content of the poster's posts will have you decide if it's worth it to follow them or not.
                          There really aren't those many writing answers in here, and fewer still being Chaos' employees.

                          To just cover one topic, which is renders too dark or too light, I'd say, from my experience that it's usually a GI issue. As in the GI inside V-Ray is calculated incorrectly and so gives you a render which is too dark or too light, depending on the materials in your scene.
                          Not really.
                          Then again, you have John caring for you now, so all is good.

                          I've covered the data in full in this tutorial, feel free to have a look and see if it helps.

                          Understanding Global Illumination - Handling Renders which are too dark or too light

                          https://youtu.be/pBvj-JPchnw
                          Warning: you have 7 posts and two years of seniority in the forum, your nick is a fantasy one, and you post a youtube video which is supposed to explain how to fix a non-existent problem (not, at least, in the way you framed it.).
                          That's dangerously close to it being noise (or, as you put it, "false or incorrect data"), rather than info, which is what you wanted to avoid in the forum at the start of the same post.
                          I find it ironic, and also corroborating my point: it's an open forum, if we regulated it too much, it'd turn into Chaos' own blog.
                          Further to this: it's called CHAOSGroup, not "theOrderlyBunch"... XD

                          joconnell that nix thing looks nice! I recently noticed xRite too now has multi-scope sensors (ie. like the i1display, just working on more devices, including paper). They all look interesting to gauge a tone, but i ain't sure about the true Albedo (non-matte stuff will have a strong angle-dependent component...). Will have to try one out, won't i? :P
                          Either way, likely much better than eyeballing stuff!
                          Lele
                          Trouble Stirrer in RnD @ Chaos
                          ----------------------
                          emanuele.lecchi@chaos.com

                          Disclaimer:
                          The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

                          Comment


                          • #43
                            50... that's really bright.

                            When you say 50, you mean 50 in srgb which will be 7 in linear space right? So we'd have to type 7*7*7 (0.027 in float) in the color picker inside of 3ds max?
                            Because if not, the famous toe must be reeealy large in post such a huge contrast increase would amplify the noise alot!

                            Originally posted by ^Lele^ View Post
                            Further to this: it's called CHAOSGroup, not "theOrderlyBunch"... XD
                            hahaha this made my day!
                            Last edited by Ihno; 28-10-2018, 02:39 AM.
                            German guy, sorry for my English.

                            Comment


                            • #44
                              Originally posted by ^Lele^ View Post
                              joconnell that nix thing looks nice! I recently noticed xRite too now has multi-scope sensors (ie. like the i1display, just working on more devices, including paper). They all look interesting to gauge a tone, but i ain't sure about the true Albedo (non-matte stuff will have a strong angle-dependent component...). Will have to try one out, won't i? :P
                              Either way, likely much better than eyeballing stuff!
                              We use the pro version in work as it'll give you acescg values rather than just srgb. I bought a cube sensor before I swapped company which is the same deal but won't do aces either unfortunately. You're of course right on albedo and with talking to all the smart color people in work about aspects of cameras and the tolerance of things like luxmeters, there's a small amount of inaccuracy in everything so it's nigh on impossible to get 100% accuracy, especially at any kind of sensible cost. You guys have made vrscans for when you need something exactly so that's our 100% accuracy when a client or situation demands it but for day to day or general things I'll just have to be content that I can get to better or close and leave it at that

                              Comment


                              • #45
                                Originally posted by Ihno View Post
                                50... that's really bright.

                                When you say 50, you mean 50 in srgb which will be 7 in linear space right? So we'd have to type 7*7*7 (0.027 in float) in the color picker inside of 3ds max?
                                Because if not, the famous toe must be reeealy large in post such a huge contrast increase would amplify the noise alot!
                                I'm going to check what setup we use in work (though the fancier nix pro gives them linear float values so they go in instead) as I'm not sure off the top of my head whether we put in 50 directly but let the color map know it's an srgb value so it converts for us. I'm waiting on a lux meter to arrive here (which will have at least 5% margin of error in it) and hopefully I'll get a chance to do a small test on a room in my apartment for measured color, light and camera settings. It worked before on a very simple test with a macbeth chart and a single bulb so lets do something a bit more complex!

                                leon0101 great that you found it, I'll bookmark that as it'll come up again in future! You can see the difference that linearizing the photo made to the brown door example where the previous dark black areas have become far less contrasty and thus will bounce more light - even if you didn't go the full route of processing your images this way, one other texture artist said it made a massive difference when they started just putting a middle grey card in as a reference point beside whatever he was shooting. If all they did was make sure the grey card was an accurate middle grey, all of the textures and colours they used would work as a harmonious set. If you've got no reference grey to anchor yourself, you'll end up with a collection of textures that are a bit too dark in places or a bit too bright in places and as you've found, your lighting starts to go a bit out of whack. It's a really tough area to chase 100% accurate results (nigh on impossible) but the nice thing is the really accessible stuff in that video is going to give you the majority of the result you want - the more percent accuracy you fight for, the more expensive and difficult it gets so the benefits are diminishing, unless you've got some ex air force mathematicians and physicists on staff to do something magical for you

                                Comment

                                Working...
                                X