Jump to content
Hash, Inc. Forums


Hash Fellow
  • Content Count

  • Joined

  • Last visited

  • Days Won


robcat2075 last won the day on April 8

robcat2075 had the most liked content!

Community Reputation

283 Excellent

About robcat2075

Contact Methods

  • Website URL

Profile Information

  • Name
    Robert Holmén
  • Status
  • Location
    Dallas, Texas

Previous Fields

  • A:M version
  • Hardware Platform
  • System Description
    Win 7 64-bit Q6600 2.4 GHz 8GBNVIDIA GT240
  • Self Assessment: Animation Skill
  • Self Assessment: Modeling Skill
  • Self Assessment: Rigging Skill
  • Programmer

Recent Profile Visitors

5,491 profile views
  1. But now you can respond to posts, right?
  2. the above code successfully uses nested loops to print a 9x5 grid of dots However, to get the design we want, the code needs to print Xs sometimes instead of all dots. At every grid point the code will need to test whether it should print an X instead of a dot. ....X.... ...X.X... ..X...X.. .X.....X. X.......X The design is an intuitively obvious shape to look at but not so obvious to translate into a single test the code can do at every grid point. The simplest test is for the first X because it is in the middle of the line. At each dot we can test if it is the middle point by testing if our current j count equals half the width of the grid if (j == (9/2)) { cout << "X" << flush; } (Yes, i know 9/2 does not equal any of the values that j goes through, but apparently C++ rounds it to 5 for us) We include an else to catch all the other cases when that test doesn't come up TRUE else { cout << "." << flush; } The above six lines replace the simple dot-every-time code in the last version... cout << "." << flush; The output looks like this... ....X.... ....X.... ....X.... ....X.... ....X.... In our desired result, the Xs are offset by one away from the center with each successive line. Since our i counter increments by one for each line we can use that to inform our test. Instead of testing if j equals half the width of the grid, we test if it equals half the width... plus the current i count. This new if test replaces the old one. if (j == (9/2)+i) Since i was zero the first time through the loop, the first line of the new output is the same as before. Then the X gets place one space farther right on each line after that. ....X.... .....X... ......X.. .......X. ........X To be continued...
  3. Here's what i don't understand. This same window popsup in Netrender to choose a network location of IO plugins but it is also going to assign a drive letter, unlike the window where a network location for slaves was assigned. You can set this alternate path but how do you get the slaves to use it?
  4. July 20 brings a new Live Answer Time at Noon CDT July 20 is the 50th anniversary of Apollo 11 landing on the Moon. Neil Armstrong, first Moon walker, upper left...
  5. Loops... A loop is for some some set of steps you want to repeat. A For-loop is good for when you know how many times you will want to repeat the set of steps. For example, If i had a string that was 20 characters long and i wanted to convert it all to UPPER CASE, i might use a for-loop that incremented a counter, x, from 0 to 19, and inside the loop I'd put some code that looks at the xth character of the string and swaps in the uppercase version of whatever letter it finds in that xth place. After the 0 through 19 iterations of that for-loop, all the characters in the string will have gotten converted by that code inside the loop that looks at just one character. A nested loop is for when you have some set of steps you want to repeat, and those steps include some second set of steps that have to be repeated some number of times within each iteration of the first set of steps. A classic case some sort of data on a grid Suppose you wanted to create this on a grid that is 9 wide by 5 high ....X.... ...X.X... ..X...X.. .X.....X. X.......X I would approach this in small pieces. I might start by making a loop with a counter i that goes from from 0 to 4 and I'll put some simple output inside it so i know if it is working or not. #include <iostream> using namespace std; int main() { for (int i = 0; i < 5; i++) {// this loop will increment from 0 to 4 cout << "dummy text" << endl; //place holder for code to be added later } return 0; } If that doesn't print out "dummy text" five times, i will fix that before I go any further. dummy text dummy text dummy text dummy text dummy text Then I might insert another loop inside the first one that increments a counter j from 0 to 8 #include <iostream> using namespace std; int main() { for (int i = 0; i < 5; i++) {// this loop will increment form 0 to 4 for (int j=0; j < 9; j++) {//this loop increments from 0 to 8 cout << "." << flush; } } return 0; } This is the output ............................................. I used "flush" so the characters wouldn't each be on a different line, but I really wanted five lines. i add an "endl" right after the end of the inside loop to force a line feed before the outside loop executes the inside loop again... #include <iostream> using namespace std; int main() { for (int i = 0; i < 5; i++) {// this loop will increment from 0 to 4 for (int j=0; j < 9; j++) {//this loop increments from 0 to 8 cout << "." << flush; } cout << endl; } return 0; } That puts the output of each pass of the inside loop on a new line... ......... ......... ......... ......... ......... That is a working nested loop that we have now. (to be continued...)
  6. Ideas of shapes you could try to draw on a grid with nested For loops sine wave saw tooth wave triangle wave a rectangle a swiss cross a right triangle an isoceles triangle ?? Basically anything you can reduce down to a test of whether the pixel is inside or outside the shape could be drawn on a grid.
  7. robcat2075

    No Sound

    Oh cool. It turns out someone else just had this problem...
  8. "The Case of the Missing Hare" (1952) Three different backgrounds in one shot...
  9. For simplicity of maintaining the system. You only need to ever update the main computer if everything comes from there. That was the premise of Jody's PDF. If it can work that would be the way to go.
  10. Finding plugins (especially Image IO plugins, needed to save a render) seems to be problem for slaves on machines that don't have an actual directory of A:M installed. Is there some way using "folder paths" (?) or shortcuts to make the slave look across the network to the A:M folder installed on the main machine for additional items it needs? If C:\Program Files\Hash Inc\V19.0\ImageIOS doesn't exist on the slave machine can we make it look to \\MainComputer\AMRoot\ImageIOS ? There is an "override plugin folders" option in Netrender but that doesn't seem to work the same as the "override slaves" option, which was able to get the Render Messengers to pull their slaves from the main computer instead of needing them locally.
  11. I looked on the web and found that other people have had this very same error situation and they decided it was a fault in "Intelli-sense" which is the VS tool which tries to pre-check your code for you. You can turn Intelli-sense off somehow, but it won't stop you from trying to compile a program if you want to anyway. If your errors are real errors, the compiler will tell you. 😀 I got my Do-While and For program running. I will see you all tonight!
  12. Here is a curiosity. I've used "cin" to get a user input and it is flagged as an error "cin" is ambiguous The program still compiles and works as expected, but for some reason VS thinks there is an error there.
  13. New problem... They render but they don't save the image. 😀 I'm sure there's a solution.
  14. The test i did last night was when i still had A:M installed on the remote PC. But according to the plan in Jody's PDF everything is supposed to come from the server, So I uninstalled A:M from the remote computer. With A:M gone from the remote computer, The rendermessengers are still properly pulled from the main server and run on the remote computer, according to plan. However, the RenderMessengers are still looking for RenderSlaves on a hard-coded path to a C drive, which won't exist on the remote computer. How do I get the messengers to properly look for RenderSlaves in the network shared folder \AMRoot? Update.... I can on the remote slave in Netrender and choose "Change slave exe" and choose RenderSlave.exe from the networked folder. Now it renders! But what do i need to do to make this happen automatically, so i don't need to rechoose every slave every time I run Netrender?
  15. It's a very simple test project. It is baffling because the same project worked before I changed it to render with AO. IT has to be the same version of Netrender since everything is coming from the AMRoot directory on the server
  • Create New...