Commit Graph

47594 Commits

Author SHA1 Message Date
Ton Roosendaal
2edfe5307b 2.5
- writeimage.c back, put in space_file now...
- renamed fluidsim.c to distinguish from bke version
2009-01-24 14:24:59 +00:00
Ton Roosendaal
0ac35ca7c1 2.5
- Brought back code for particle edit and fluidsim
- Sanitized code from globals and bad level calls,
  so its ready to come back working.
- Fixed cirle selecting (Ckey now)
- Enabled undo for editmode curve, armature, particle
  and lattice

(another commit following)
2009-01-24 13:45:24 +00:00
Joshua Leung
e71d531238 Animato - Shapekeys work again
The RNA-wrapping for the 'value' (internally kb->curval) was set to be not editable, thus preventing Animato from writing to it. Removing the flag makes shapekeys more functional again (there are still a few non-functional cases).
2009-01-24 11:35:14 +00:00
Joshua Leung
e42ed36b3b Animato - Insert Keyframe for PoseChannels
Added temporary entries to the quick-hack insert-keyframe operator menu. Action Editor doesn't get refreshed properly yet though.

Proper keyingsets will be coming/remimplemented tomorrow or later this week.
2009-01-24 10:58:34 +00:00
Campbell Barton
10e39a2331 jpeg2000 commit missed the 2 most important files. 2009-01-24 10:19:29 +00:00
Joshua Leung
f53ecfa403 2.5 - Pose-Channel (i.e. PoseMode bone) Transforms work again
In the brief tests I did on a few rigs, this seems to work ok. Martin may want to check on the code for any cleanups that may be needed here.

Coming soon will be some modifications to the primative insert-key operator added earlier, so that Animato can be used to animate characters!
2009-01-24 10:03:19 +00:00
Campbell Barton
a727277a25 my last commit broke transforming metastrips, use find_id for scene lookup. 2009-01-24 09:55:31 +00:00
Joshua Leung
4b257e956f Animato - FCurve Modifier Bugfixes
* FModifier data is now allocated correctly, solving crashes on loading files containing IPO-curves with cyclic extrapolation
* Fixed memory leaks with FModifiers and their data not being freed correctly. Not sure exactly why the old code didn't work for this.
2009-01-24 08:21:39 +00:00
Nicholas Bishop
744e38cc74 Added back a line removed in r18642 so the macro CFRA can access scene. 2009-01-24 06:08:46 +00:00
Campbell Barton
8543337597 added back extend (Ekey) to sequener transform, works with nested metastrips too. 2009-01-24 05:38:25 +00:00
Campbell Barton
e68b7e6d87 * operators for toggling, making, separating metastrip's. (tab, m, alt+m)
* transform support for metastrips
* active strip is set to NULL if its freed again.
2009-01-23 23:14:02 +00:00
Joshua Leung
36b7ff81d2 Animato - More compatability work
* Absolute shapekeys work again. For now, the 'speed' curve isn't converted yet (same goes for 'Curves'). Those were kindof hacky, since they manipulated time in weird ways. Probably the clamping to 0.0-1.0 range can go though.

* Materials, Textures, Cameras, and local-constraint IPO's are now converted properly to the new system
2009-01-23 23:11:12 +00:00
Martin Poirier
fc7af897b7 Prevent overdrawing to trigger when starting a stroke by snapping to an existing point.
Overdrawing copies point type from start and end point (better for polyline)
misc renaming some structs and vars (cleanup mostly)
2009-01-23 21:34:51 +00:00
Campbell Barton
55150edc92 [#18164] jpeg2000 patch, with some fixes from Peter too.
Support for jpeg2000 and writing DCI Cinema standard files.

Notes
* 12 and 16bit channel depths are converted from/to blenders float buffer.
* Grayscale/RGB with alpha supported.
* Theres an option to save color channels as YCC rather then RGB.
* Quality 100 saves lossless
* The UI is a bit weired because of the DCI standards need to be given to the encoder.
2009-01-23 21:08:01 +00:00
Brecht Van Lommel
c86579b11e 2.5: multiple small fixes
- wm draw method is now initialized correct when reading older
  files, but the SDNA bug causing the problem is still unsolved.
  is due to // char pad[8]; not being recognized as commented.
- triple buffer proxy texture test follows spec better now,
  was disabling triple buffer unnecessarily on some drivers.
- some cmake compile fixes related to sequencer pthread usage
  and removed bad level calls lib for player.
- show outliner header buttons in oops mode as well until that
  can be switched in the UI.
- fix region data free issue for tooltips
- warning fixes
2009-01-23 20:36:47 +00:00
Ton Roosendaal
4531e8e6a7 2.5
File reading of 2.50 files fixed.
- it now exits nicely from queues without using free'd memory
  (checks CTX_wm_window(C) to be NULL)
- code that matched current (ghost) window with new situation
  lacked setting a pointer good.

Overall cleaned some parts too; like context clears now all
wm related pointers when you set a new wm, window or area.
2009-01-23 17:42:36 +00:00
Ton Roosendaal
66437a62a7 2.5
Font object + editing back.

Was quite some work due to a myriad of globals all over!
Works nicely 100% local now.

To enable a single textedit operator, I've added a new
keymap entry KM_TEXTEDIT, which gives all keyboard events
to the handler. Also had to add a new keymap-add function
to force a keymap handler in beginning of region handlers.
In future this can be used to prioritize handlers.

Also: split off the arrow keys (frame change) to a separate
region level handler. Can be set with default flag in
regiontype->keymapflag ED_KEYMAP_FRAMES
2009-01-23 14:43:25 +00:00
Campbell Barton
f4133b730c fix for eternal loop that could happen when resizing the view. 2009-01-23 14:08:02 +00:00
Michael Fox
87dd972773 2.5
*****
small commit, just added a couple missing notifiers to the timline buttons
2009-01-23 10:51:13 +00:00
Brecht Van Lommel
69310fb107 2.5: WM Compositing
* Triple Buffer is now more complete:
  - Proper handling of window resize, duplicate, etc.
  - It now uses 3x3 textures (or less) if the power of two sizes
    do not match well. That still has a worst case wast of 23.4%,
    but better than 300%.
  - It can also use the ARB/NV/EXT_texture_rectangle extension
    now, which may be supported on hardware that does not support
    ARB_texture_non_power_of_two.
  - Gesture, menu and brushe redraws now require no redraws at all
    from the area regions. So even on a high poly scene just moving
    the paint cursor or opening a menu should be fast.

* Testing can be done by setting the "Window Draw Method" in the
  User Preferences in the outliner. "Overlap" is still default,
  since "Triple Buffer" has not been tested on computers other than
  mine, would like to avoid crashing Blender on startup in case
  there is a common bug, but it's ready for testing now.

  - For reference "Full" draws the full window each time.
  - "Triple Buffer" should work for both swap copy and swap exchange
    systems, the latter still need the -E command line option for
    "Overlap".
  - Resizing and going fullscreen still gives flicker here but no
    more than "Full" drawing.

* Partial Redraw was added. ED_region_tag_redraw_partial takes a
  rect in window coordinates to define a subarea of the region.
  On region draw it will then set glScissor to a smaller area, and
  ar->drawrct will always be set to either the partial or full
  window rect. The latter can then be used for clipping in the 3D
  view or clipping interface drawing. Neither is implemented yet.
2009-01-23 03:52:52 +00:00
Joshua Leung
9872e5882c Animato: Added conversions for Camera data and Texture IPO's
Most of the settings have been converted, however, there are a few which are not easy to convert.

* For textures:
- tex->noisedepth  - undefined in RNA?
- tex->noisetype   - undefined in RNA?
- tex->stype       - undefined in RNA?
- tex->noise_basis2 - is noted in RNA as undefined... 

* For Cameras:
- "CAM_LENS" define was used for either 'ortho_scale', or 'lens' depending on camera type. This is currently difficult to ascertain using current code... I'll revisit this later
- cam->YF_aperature - undefined in RNA 
- cam->YF_dofdist - undefined in RNA
2009-01-23 03:41:05 +00:00
Shaul Kedem
b7f0add801 remove doubles op, ton: is this working properly? 2009-01-23 03:07:07 +00:00
Joshua Leung
6f24a2a559 Animato:
* Removed a few excessive debug prints
* Fixed crash on loading "Frankie" from BBB due to missing check for Driver without a target
2009-01-23 02:59:21 +00:00
Joshua Leung
2e7f3bb99c Animato Bugfixes:
* Fixed bug in with RNA-paths. String identifiers (i.e. some_collection["somekey"]) were not getting handled at all due to wrong indices it seems. I don't know of any other code using this, so hopefully there aren't any unintended bugs caused by this. 
This means that bone animation now works again.

* Added a few more sanity checks to file-reading code, and heaps of extra prints everywhere else for debugging purposes (these will be removed in due course).
2009-01-23 02:50:04 +00:00
Benoit Bolsee
8a95c67a50 BGE API cleanup: shape action actuator. 2009-01-22 17:40:47 +00:00
Campbell Barton
3e6a1bc60b New Operators, duplicate is shift+d, Add operators are accessible from the header.
SEQUENCER_OT_add_duplicate(mode=1) 	
SEQUENCER_OT_add_image_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True) 	
SEQUENCER_OT_add_movie_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True) 	
SEQUENCER_OT_add_sound_strip(name='', start_frame=0, channel=1, filename='', replace_sel=True)

Some of these use the file selector, Note that sound isn't working yet because editsound.c functions are not yet in 2.5 and Operators dont have a way to recieve an array of strings so SEQUENCER_OT_add_image_strip only adds 1 image at the moment.
2009-01-22 15:52:04 +00:00
Ton Roosendaal
d5f69e8552 2.5
- warning cleanup (wrong casts, unused vars, missing protos)
- removed old cruft from node_edit.c
- cleaned wm_jobs.c a bit
2009-01-22 15:46:35 +00:00
Ton Roosendaal
9cc59fb0c3 2.5
Added WM Jobs manager
- WM can manage threaded jobs for you; just provide a couple
  of components to get it work:
  - customdata, free callback for it
  - timer step, notifier code
  - start callback, update callback
- Once started, each job runs an own timer, and will for
  every time step check necessary updates, or close the
  job when ready. 
- No drawing happens in jobs, that's for notifiers!
- Every job stores an owner pointer, and based on this owner
  it will prevent multiple jobs to enter the stack. 
  Instead it will re-use a running job, signal it to stop
  and allow caller to re-initialize it even.
- Check new wm_jobs.c for more explanation. Jobs API is still
  under construction. 
  Fun: BLI_addtail(&wm->jobs, steve); :)

Put Node shader previews back using wmJobs
- Preview calculating is now fully threaded (1 thread still)
- Thanks to new event system + notifiers, you can see 
  previews update even while dragging sliders!
- Currently it only starts when you change a node setting.

Warning: the thread render shares Node data, so don't delete
nodes while it renders! This topic is on the todo to make safe.

Also:
- bug in region initialize (do_versions) showed channel list in
  node editor wrong.
- flagged the channel list 'hidden' now, it was really in the
  way! This is for later to work on anyway. 
- recoded Render API callbacks so it gets handlers passed on, 
  no globals to use anymore, remember?
- previewrender code gets now so much nicer! Will remove a lot
  of stuff from code soon.
2009-01-22 14:59:49 +00:00
Joseph Eagar
c31be607e7 destruction of previous slot api. if it returns, it'll
be in the form of functions that return pointer
references to the slot data or something.
2009-01-22 13:59:30 +00:00
Joseph Eagar
c54d7f3945 changed bmesh_api_set/getindex to be just macros, and shortened to bmesh_api_get/seti 2009-01-22 12:34:52 +00:00
Joseph Eagar
cb033a8c4e added operator slot iterators 2009-01-22 12:29:08 +00:00
Joshua Leung
a017982074 Animato - Basic version patching support
This is work-in-progress patching support for converting animation saved in old system to work in the new one. 

* Only IPOs/Actions directly attached to Objects + Shapekeys are converted for now. More types will follow...
* This is currently done as a step outside of do_versions() due to problems with various pointers not having been resolved yet, but which are necessary for correct resolution of issues such as drivers... However, the current code does illustrate how the data should be converted to give best results/compat between the two systems.
* Still need to get the converted data working with depsgraph correctly. Currently, some of my testfiles work, but the BBB files still don't.
2009-01-22 10:53:22 +00:00
Joseph Eagar
c1847eac84 tesselator/triangulator improvements, it now works a lot better, though still not perfectly 2009-01-22 07:06:25 +00:00
Nicholas Bishop
3cdac8e9f7 * Fixed some crashiness with sculpt file loading
* Added undo push for toggling sculpt mode
* Little optimization for brush texture, was generating quite large textures unecessarily
2009-01-22 04:22:26 +00:00
Nicholas Bishop
d95ad1a445 Undo in sculpt mode works now. Also removed some unused old code in sculpt.c 2009-01-22 01:58:38 +00:00
Nicholas Bishop
faa871117f Brought back sculpt smooth brush. Also added a new brush flag for setting whether to use brush spacing. 2009-01-21 22:40:28 +00:00
Martin Poirier
c6715de1e9 misc bug fixes and display adjustments 2009-01-21 22:20:16 +00:00
Nicholas Bishop
e609d0cb25 Brought back rake mode for sculpt (turns the brush texture with the direction of the brush stroke.) 2009-01-21 21:17:32 +00:00
Nicholas Bishop
bf72c26c57 Brought back textures for sculpt mode. These are stored in Brush DNA now, as well as the three texture modes (drag/tile/3D). 2009-01-21 20:03:41 +00:00
Andrea Weikert
446ed90fd6 2.5 filebrowser
cleaned up selection code
new operators: 
- highlight file under cursor
- select all/nothing (AKEY)
- border select (BKEY)
changed selection to be invoked by LEFTMOUSE
2009-01-21 19:28:28 +00:00
Campbell Barton
b9682a7ec8 sequencer operators duplicate, delete, separate images. 2009-01-21 18:47:09 +00:00
Nicholas Bishop
b4bef32bd9 * Fixed a minor CMake error for WITH_YAFRAY option
* Removed two unused sculpt DNA fields
* Restored brush spacing option to sculpt
2009-01-21 18:44:36 +00:00
Benoit Bolsee
8bd7aa0a01 BGE API cleanup: action actuator. 2009-01-21 13:54:53 +00:00
Campbell Barton
e017235adc sequencer header buttons, not linked up to anything yet. 2009-01-21 12:39:56 +00:00
Joseph Eagar
e43fa0eb82 conversion code now uses triangulator for fgonafication of ngons. also implemented a collapse vert operator (execute it with jkey). note to Briggs: BM_Collapse_Disk wasn't quite finished. . .I got it to mostly work, but it still needs work (and the way I had it handle 2- and 3-valence verts may be wrong). Also it can make 2-edged faces in certain situations. Need to work through the code some more. 2009-01-21 10:11:01 +00:00
Joseph Eagar
d1f90443bb got triangulator to work, and made it a bmesh operator. also added dissolve faces operator, with no implementation (need to discuss with Geoffry how best to do this). the bmesh test operator, jkey, now maps to the triangulator. 2009-01-21 07:03:39 +00:00
Campbell Barton
88e244ebb9 basic transform for sequencer strips
can transform the strips or move their handles
Still todo, click-drag transform, metastrips support, snapping, markers overlap checks and constrain to valid channels.
2009-01-21 07:01:20 +00:00
Joshua Leung
09357a91ce Animato - Quick bugfix
Added missing 'break;' 's skipped during the sprint towards the "first working prototype" stage. The temporary Insert Keyframe operator should now work correctly for rotation/scaling keys now by not adding extra keys.
2009-01-21 06:14:37 +00:00
Joseph Eagar
8e996b4a6e merge with 2.5 at r18598, also made the test 2.5 operator use the (naive) edge subdivide bmop 2009-01-21 05:23:39 +00:00
Michael Fox
4cb1302ee2 2.5
*******

just a small commit, addeed a few more error, warning reports
2009-01-21 02:24:12 +00:00