diff options
author | David Walter Seikel | 2014-05-28 16:15:21 +1000 |
---|---|---|
committer | David Walter Seikel | 2014-05-28 16:15:21 +1000 |
commit | 7666177682592afe8bbccc722e803aec69dd152b (patch) | |
tree | 10f31a0491fb345841a5cffb65f9550dd7df6afe /README | |
parent | No, this is not the portal The Naminator came through, this is much worse. B-) (diff) | |
download | SledjHamr-7666177682592afe8bbccc722e803aec69dd152b.zip SledjHamr-7666177682592afe8bbccc722e803aec69dd152b.tar.gz SledjHamr-7666177682592afe8bbccc722e803aec69dd152b.tar.bz2 SledjHamr-7666177682592afe8bbccc722e803aec69dd152b.tar.xz |
Run the docs through a spell checker. I usually use an editor that doesn't have one.
Diffstat (limited to '')
-rw-r--r-- | README | 32 |
1 files changed, 16 insertions, 16 deletions
@@ -41,7 +41,7 @@ virtual worlds you can program a bare cube to act like a car that you | |||
41 | sit on and drive, the rest is mostly for looks. | 41 | sit on and drive, the rest is mostly for looks. |
42 | 42 | ||
43 | There's no such thing as virtual wind in your hair, or smog in your | 43 | There's no such thing as virtual wind in your hair, or smog in your |
44 | nostrils, but if that eventualy gets invented, a generic virtual world | 44 | nostrils, but if that eventually gets invented, a generic virtual world |
45 | system should be able to hook into it easily enough. | 45 | system should be able to hook into it easily enough. |
46 | 46 | ||
47 | Generic. | 47 | Generic. |
@@ -57,7 +57,7 @@ philosophy, and you can do almost anything with the usual collection of | |||
57 | small Unix tools. | 57 | small Unix tools. |
58 | 58 | ||
59 | So the design of SledjHamr involves lots of little bits of generic code | 59 | So the design of SledjHamr involves lots of little bits of generic code |
60 | that all work together seemlessly. A major design goal is to be as | 60 | that all work together seamlessly. A major design goal is to be as |
61 | generic, yet useful, as possible, to support future stuff that hasn't | 61 | generic, yet useful, as possible, to support future stuff that hasn't |
62 | been invented yet. As well as supporting stuff we need to do now. | 62 | been invented yet. As well as supporting stuff we need to do now. |
63 | 63 | ||
@@ -72,7 +72,7 @@ that computer storage, memory, and CPU power are all very cheap, so why | |||
72 | bother making things small. Any long term computer user might have | 72 | bother making things small. Any long term computer user might have |
73 | noticed that despite our modern computers being many orders of magnitude | 73 | noticed that despite our modern computers being many orders of magnitude |
74 | faster and bigger than they where a decade or two ago, everything runs | 74 | faster and bigger than they where a decade or two ago, everything runs |
75 | slower than it did then. This proves the falacy of "everything is cheap | 75 | slower than it did then. This proves the fallacy of "everything is cheap |
76 | and getting cheaper, lets be wasteful" theory. People are just too | 76 | and getting cheaper, lets be wasteful" theory. People are just too |
77 | comfortable with their wasteful habits. Not to mention that the | 77 | comfortable with their wasteful habits. Not to mention that the |
78 | computer industry loves to get every one to throw out their computers | 78 | computer industry loves to get every one to throw out their computers |
@@ -83,7 +83,7 @@ computers, just to do what it did fine last year. | |||
83 | Even a small virtual world can use up huge amounts of storage, large | 83 | Even a small virtual world can use up huge amounts of storage, large |
84 | amounts of memory and CPU power, and large amounts of network bandwidth. | 84 | amounts of memory and CPU power, and large amounts of network bandwidth. |
85 | This is the problem with simulating worlds, the bits might be small, but | 85 | This is the problem with simulating worlds, the bits might be small, but |
86 | there's an aweful lot of them. You can run a busy web site on a $5 per | 86 | there's an awful lot of them. You can run a busy web site on a $5 per |
87 | month web host, but you need to spend at least $100 per month on a | 87 | month web host, but you need to spend at least $100 per month on a |
88 | hosted server that's powerful enough to run a small OpenSim based | 88 | hosted server that's powerful enough to run a small OpenSim based |
89 | virtual world. | 89 | virtual world. |
@@ -102,11 +102,11 @@ Fast. | |||
102 | Ask any current virtual world user, at least of the types based on SL | 102 | Ask any current virtual world user, at least of the types based on SL |
103 | technology, what the number one biggest problem is and they will tell | 103 | technology, what the number one biggest problem is and they will tell |
104 | you it's lag. So speed is important to everyone. Which makes me wonder | 104 | you it's lag. So speed is important to everyone. Which makes me wonder |
105 | why people use slow bloated things like interpretted scripting languages | 105 | why people use slow bloated things like interpreted scripting languages |
106 | and human readable network protocols / file formats for damn near | 106 | and human readable network protocols / file formats for damn near |
107 | everything? | 107 | everything? |
108 | 108 | ||
109 | People use interpretted scripting languages coz it's easy and convenient | 109 | People use interpreted scripting languages coz it's easy and convenient |
110 | for them. Not so convenient for the user though when it causes more | 110 | for them. Not so convenient for the user though when it causes more |
111 | lag. People invent human readable network protocols and file formats | 111 | lag. People invent human readable network protocols and file formats |
112 | coz it makes it easy for them to read when they need to debug the | 112 | coz it makes it easy for them to read when they need to debug the |
@@ -129,11 +129,11 @@ Once again it's a matter of scale for virtual worlds. Each part by | |||
129 | itself might be barely fast enough that people don't notice, but it all | 129 | itself might be barely fast enough that people don't notice, but it all |
130 | adds up when you deal with the huge multitude of fiddly little details | 130 | adds up when you deal with the huge multitude of fiddly little details |
131 | in a virtual world. Which results in the number one problem being ... | 131 | in a virtual world. Which results in the number one problem being ... |
132 | lag. Often everything slows down so much it becomens unusable. | 132 | lag. Often everything slows down so much it becomes unusable. |
133 | 133 | ||
134 | We can have our cake and eat it to. So long as the crucial heavily used | 134 | We can have our cake and eat it to. So long as the crucial heavily used |
135 | parts of the system that need speed are written efficiently in a | 135 | parts of the system that need speed are written efficiently in a |
136 | decently fast language, then we can still use easy interpretted | 136 | decently fast language, then we can still use easy interpreted |
137 | scripting languages for other parts that wont suffer from scaling | 137 | scripting languages for other parts that wont suffer from scaling |
138 | issues. So long as we stick with efficient binary based network | 138 | issues. So long as we stick with efficient binary based network |
139 | protocols and file formats, the tiny percentage of developers that need | 139 | protocols and file formats, the tiny percentage of developers that need |
@@ -147,7 +147,7 @@ Assembler and C is used for OS kernels, embedded software, and other | |||
147 | things that need to be efficient. So C is the major language used for | 147 | things that need to be efficient. So C is the major language used for |
148 | SledjHamr. Bits of assembler might be used if needed. | 148 | SledjHamr. Bits of assembler might be used if needed. |
149 | 149 | ||
150 | For the interpretted scripting language of choice used in SledjHamr, I | 150 | For the interpreted scripting language of choice used in SledjHamr, I |
151 | chose Lua. It's very generic in nature with it's wonderful tables and | 151 | chose Lua. It's very generic in nature with it's wonderful tables and |
152 | meta tables. It's tiny, designed to be embedded inside other languages. | 152 | meta tables. It's tiny, designed to be embedded inside other languages. |
153 | With the LuaJIT just in time compiler, it's the fastest scripting | 153 | With the LuaJIT just in time compiler, it's the fastest scripting |
@@ -164,7 +164,7 @@ when Apple based their new version of Mac Os X on BSD Unix, the OS wars | |||
164 | where over. Everything now is some sort of Unix, except Windows. Hell, | 164 | where over. Everything now is some sort of Unix, except Windows. Hell, |
165 | iPhones OS is based on Mac OS X, and Android is based on Linux, so even | 165 | iPhones OS is based on Mac OS X, and Android is based on Linux, so even |
166 | the great majority of phones these days are Unix. Every one is a Unix | 166 | the great majority of phones these days are Unix. Every one is a Unix |
167 | user, wether they know it or not. | 167 | user, whether they know it or not. |
168 | 168 | ||
169 | Windows makes a nod to being Posix compliant, though it's barely a nod. | 169 | Windows makes a nod to being Posix compliant, though it's barely a nod. |
170 | Cygwin however can be installed on Windows to make it more like the Unix | 170 | Cygwin however can be installed on Windows to make it more like the Unix |
@@ -253,7 +253,7 @@ Secure. | |||
253 | ------- | 253 | ------- |
254 | 254 | ||
255 | One of our developers is a cypherpunk / cryptogeek / whatever term she's | 255 | One of our developers is a cypherpunk / cryptogeek / whatever term she's |
256 | comfortable being labelled as. Our team is very privacy focused. So | 256 | comfortable being labeled as. Our team is very privacy focused. So |
257 | security and privacy are important goals as well. Small modular code is | 257 | security and privacy are important goals as well. Small modular code is |
258 | better for security, is there is less code to look at to do security | 258 | better for security, is there is less code to look at to do security |
259 | audits, and less places for things to go wrong, or escape attention. | 259 | audits, and less places for things to go wrong, or escape attention. |
@@ -346,7 +346,7 @@ goes against our goals, so expect that to be temporary. Specifically, | |||
346 | once we get around to actually implementing the nails protocol stuff, | 346 | once we get around to actually implementing the nails protocol stuff, |
347 | some of the Lua network and file formats will get replaced be nails. | 347 | some of the Lua network and file formats will get replaced be nails. |
348 | 348 | ||
349 | The Lua GUI code is losely based on my ancient matrix-RAD stuff that was | 349 | The Lua GUI code is loosely based on my ancient matrix-RAD stuff that was |
350 | written in Java. The fact that I had most of it working within a week | 350 | written in Java. The fact that I had most of it working within a week |
351 | is a tribute to how easy Lua is. The original Java took me years to | 351 | is a tribute to how easy Lua is. The original Java took me years to |
352 | write. On the other hand, I'm not that happy with the syntax of the | 352 | write. On the other hand, I'm not that happy with the syntax of the |
@@ -385,7 +385,7 @@ my vote, so I experimented with it. There was no EFL integration, so I | |||
385 | had to write some, which wasn't that hard. A year later, a new version | 385 | had to write some, which wasn't that hard. A year later, a new version |
386 | of EFL managed to bit rot my EFL/Irrlicht integration, so I fixed that. | 386 | of EFL managed to bit rot my EFL/Irrlicht integration, so I fixed that. |
387 | But now it flickers like crazy. After much discussion with other EFL | 387 | But now it flickers like crazy. After much discussion with other EFL |
388 | develpors, and some preliminary work by the Irrlicht developers, an | 388 | developers, and some preliminary work by the Irrlicht developers, an |
389 | experimental version of Irrlicht is underway that might integrate better | 389 | experimental version of Irrlicht is underway that might integrate better |
390 | with EFL. I've not tried it yet, but it was on my TODO. | 390 | with EFL. I've not tried it yet, but it was on my TODO. |
391 | 391 | ||
@@ -401,7 +401,7 @@ released, Irrlicht is much more mature. So Evas_3D only has basic | |||
401 | stuff, though it's mostly complete basic stuff. On the other hand, a | 401 | stuff, though it's mostly complete basic stuff. On the other hand, a |
402 | lot of what's missing in Evas_3D I was thinking about rewriting for | 402 | lot of what's missing in Evas_3D I was thinking about rewriting for |
403 | Irrlicht anyway. So far one major missing bit is Bullet Physics | 403 | Irrlicht anyway. So far one major missing bit is Bullet Physics |
404 | intergration, or any other physics engine. Irrlicht has Bullet, and | 404 | integration, or any other physics engine. Irrlicht has Bullet, and |
405 | another part of EFL also has Bullet. I'm hoping the authors of that | 405 | another part of EFL also has Bullet. I'm hoping the authors of that |
406 | other EFL part get together with the Evas_3D authors and figure | 406 | other EFL part get together with the Evas_3D authors and figure |
407 | something out. | 407 | something out. |
@@ -428,7 +428,7 @@ extantz | |||
428 | or even just different camera views | 428 | or even just different camera views |
429 | could use the same thing for generating two views for stereo viewing. | 429 | could use the same thing for generating two views for stereo viewing. |
430 | Nails interface to virtual world backend modules. Each module converts nails commands to / from it's own network protocol. | 430 | Nails interface to virtual world backend modules. Each module converts nails commands to / from it's own network protocol. |
431 | A SledjHamr grid, which definately should be running independantly, | 431 | A SledjHamr grid, which definitely should be running independently, |
432 | so others can log on and stay on when extantz closes down | 432 | so others can log on and stay on when extantz closes down |
433 | which may be a local or remote grid | 433 | which may be a local or remote grid |
434 | might be part of some other grid (a sim) | 434 | might be part of some other grid (a sim) |
@@ -464,7 +464,7 @@ GuiLua | |||
464 | 464 | ||
465 | Edje Lua | 465 | Edje Lua |
466 | Lua embedded in edje files, and sandboxed to them. | 466 | Lua embedded in edje files, and sandboxed to them. |
467 | add table marshalling into an edje message | 467 | add table marshaling into an edje message |
468 | add host proggy supplied Lua functions | 468 | add host proggy supplied Lua functions |
469 | So we can add nails.foo(), GuiLua.foo(), and maybe even LSL.foo(). | 469 | So we can add nails.foo(), GuiLua.foo(), and maybe even LSL.foo(). |
470 | All users of GuiLua and nails probably want to be sandboxed, the scripts should be loaded up by extantz, OpenSim, or SledjHamr, not run from the operating system. | 470 | All users of GuiLua and nails probably want to be sandboxed, the scripts should be loaded up by extantz, OpenSim, or SledjHamr, not run from the operating system. |