This often happens because CrossOver and SWTOR are not properly communicating with each other about how much Video RAM your system has (more than likely, CrossOver is not getting the correct value from your system).
You may need this setting if you have the following symptoms:
Strange rendering
Crash/Freeze on launch
A log file that says something like:fixme:d3d_texture:texture_init Failed to create surface 0x35c4fc68, hr 0x8876017c
err:d3d:resource_init Out of adapter memory
Linux:
1. Open a terminal (often ctrl+alt+t works)
2. Give this command:
lspci -v -s `lspci | awk '/VGA/{print $1}'`
3. Locate the line that states "Memory at d0000000 (##-bit, prefetchable) [size=###M]
4. Remember the "size=" value
5. In terminal run:
/opt/cxoffice/bin/cxrun
or
~/cxoffice/bin/cxrun
6. For "Use Bottle:" select your SWTOR bottle and then in "Command:" type "regedit" (without the quotes), click "Run"
7. In the Registry Editor go to
HKEY_CURRENT_USER//Software//Wine
8. Right click to create the key (if it is not already there):
Direct3D
9. Right click to create the new string:
VideoMemorySize
10. And set the value to the amount you remembered above
Mac:
1. Click on the Apple Icon in the upper left corner and select "About This Mac"
2. Click the "More Info" button
3. Select "Graphics/Displays"
4. Locate the line that is "VRAM (Total):", this is the value you need (it can be 256, 512, 1024 and on and on). Do whatever you need to do to remember it.
5. Close the "More Info" window
6. Launch CrossOver (or click on the CrossOver icon in your dock).
7. From the title bar at the top of your screen click on the "Programs" drop down menu and click "Run Command..."
8. For "Use Bottle:" select your SWTOR bottle and then in "Command:" type "regedit" (without the quotes), click "Run"
9. In the Registry Editor go to
HKEY_CURRENT_USER//Software//Wine
10. Right click to create the key (if it is not already there):
Direct3D
11. Right click to create the new string:
VideoMemorySize
12. And set the value to the amount you remembered above
Note: we cannot set this value automatically because if CrossOver is not getting the correct value from the system we have no way of knowing what it should be.